/** * Sets all the components of this tuple to {@link Double#NaN} and sets the current reference frame * to {@code referenceFrame}. * * @param referenceFrame the new reference frame to be associated with this tuple. */ default void setToNaN(ReferenceFrame referenceFrame) { setReferenceFrame(referenceFrame); setToNaN(); }
@Test public void testSetToNaN() throws Exception { Random random = new Random(574); for (int i = 0; i < ITERATIONS; i++) { ReferenceFrame[] referenceFrames = EuclidFrameRandomTools.nextReferenceFrameTree(random); ReferenceFrame initialFrame = referenceFrames[random.nextInt(referenceFrames.length)]; F frameGeometryObject = createRandomFrameTuple(random, initialFrame); assertEquals(initialFrame, frameGeometryObject.getReferenceFrame()); assertFalse(frameGeometryObject.containsNaN()); frameGeometryObject.setToNaN(); EuclidCoreTestTools.assertTuple3DContainsOnlyNaN(frameGeometryObject); frameGeometryObject = createRandomFrameTuple(random, initialFrame); ReferenceFrame newFrame = referenceFrames[random.nextInt(referenceFrames.length)]; assertEquals(initialFrame, frameGeometryObject.getReferenceFrame()); assertFalse(frameGeometryObject.containsNaN()); frameGeometryObject.setToNaN(newFrame); assertEquals(newFrame, frameGeometryObject.getReferenceFrame()); EuclidCoreTestTools.assertTuple3DContainsOnlyNaN(frameGeometryObject); } }