private void validate() { if (!Transform.isValid(this)) { throw new InvalidTransformException("Transform is invalid: " + this); } }
private void validate() { if (!Transform.isValid(this)) { throw new InvalidTransformException("Transform is invalid: " + this); } }
@Override public Transform multiply(final ReadOnlyTransform transformBy, final Transform store) { final Transform transform = super.multiply(transformBy, store); if (!Transform.isValid(transform)) { throw new InvalidTransformException("Transform is invalid"); } return transform; }
@Override public Transform invert(final Transform store) { final Transform transform = super.invert(store); if (!Transform.isValid(transform)) { throw new InvalidTransformException("Transform is invalid"); } return transform; }
@Override public Transform multiply(final ReadOnlyTransform transformBy, final Transform store) { final Transform transform = super.multiply(transformBy, store); if (!Transform.isValid(transform)) { throw new InvalidTransformException("Transform is invalid"); } return transform; }
@Override public Transform invert(final Transform store) { final Transform transform = super.invert(store); if (!Transform.isValid(transform)) { throw new InvalidTransformException("Transform is invalid"); } return transform; }
@Test public void testValid() { final Transform trans = new Transform(); assertTrue(Transform.isValid(trans)); trans.setIdentity(); trans.setRotation(new Matrix3(Double.NaN, 0, 0, 0, 0, 0, 0, 0, 0)); assertFalse(Transform.isValid(trans)); trans.setIdentity(); trans.setScale(Double.NaN, 0, 0); assertFalse(Transform.isValid(trans)); trans.setScale(Double.NaN); assertFalse(Transform.isValid(trans)); trans.setIdentity(); trans.setTranslation(Double.NaN, 0, 0); assertFalse(Transform.isValid(trans)); assertTrue(Transform.isValid(trans)); assertFalse(Transform.isValid(null));