Clearable
, Point2DReadOnly
, Transformable
, Tuple2DBasics
, Tuple2DReadOnly
public interface Point2DBasics extends Tuple2DBasics, Point2DReadOnly
A 2D point represents the 2D coordinates of a location on the XY-plane.
Although a point and vector hold onto the same type of information, the distinction is made between them as they represent different geometry objects and are typically not handled the same way:
Modifier and Type | Method | Description |
---|---|---|
default void |
applyInverseTransform(Transform transform) |
Transforms this point by the inverse of the given
transform . |
default void |
applyInverseTransform(Transform transform,
boolean checkIfTransformInXYplane) |
Transforms this point by the inverse of the given
transform . |
default void |
applyTransform(Transform transform) |
Transforms this point by the given
transform . |
default void |
applyTransform(Transform transform,
boolean checkIfTransformInXYPlane) |
Transforms this point by the given
transform . |
distance, distanceFromOrigin, distanceFromOriginSquared, distanceSquared, distanceXY, distanceXYSquared, geometricallyEquals
absolute, add, add, add, addX, addY, clipToMax, clipToMin, clipToMinMax, containsNaN, interpolate, interpolate, negate, scale, scale, scaleAdd, scaleAdd, scaleSub, scaleSub, set, set, set, set, set, set, set, set, set, set, setAndAbsolute, setAndClipToMax, setAndClipToMin, setAndClipToMinMax, setAndNegate, setAndScale, setElement, setToNaN, setToZero, setX, setY, sub, sub, sub, subX, subY
epsilonEquals, equals, get, get, get, get, get, get, get, getElement, getElement32, getX, getX32, getY, getY32
default void applyTransform(Transform transform)
transform
.
The transformation depends on the implementation of the transform, here are a few examples:
RigidBodyTransform
rotates then translates a point.
QuaternionBasedTransform
rotates then translates a point.
AffineTransform
scales, rotates, then translates a point.
applyTransform
in interface Transformable
applyTransform
in interface Tuple2DBasics
transform
- the geometric transform to apply on this point. Not modified.NotAMatrix2DException
- if the rotation part of transform
is not a
transformation in the XY plane.default void applyTransform(Transform transform, boolean checkIfTransformInXYPlane)
transform
.
The transformation depends on the implementation of the transform, here are a few examples:
RigidBodyTransform
rotates then translates a point.
QuaternionBasedTransform
rotates then translates a point.
AffineTransform
scales, rotates, then translates a point.
applyTransform
in interface Tuple2DBasics
transform
- the geometric transform to apply on this point. Not modified.checkIfTransformInXYPlane
- whether this method should assert that the rotation part of
the given transform represents a transformation in the XY plane.NotAMatrix2DException
- if checkIfTransformInXYPlane == true
and the rotation
part of transform
is not a transformation in the XY plane.default void applyInverseTransform(Transform transform)
transform
.
The transformation depends on the implementation of the transform, here are a few examples:
RigidBodyTransform
rotates then translates a point.
QuaternionBasedTransform
rotates then translates a point.
AffineTransform
scales, rotates, then translates a point.
applyInverseTransform
in interface Transformable
applyInverseTransform
in interface Tuple2DBasics
transform
- the geometric transform to apply on this point. Not modified.NotAMatrix2DException
- if the rotation part of transform
is not a
transformation in the XY plane.default void applyInverseTransform(Transform transform, boolean checkIfTransformInXYplane)
transform
.
The transformation depends on the implementation of the transform, here are a few examples:
RigidBodyTransform
rotates then translates a point.
QuaternionBasedTransform
rotates then translates a point.
AffineTransform
scales, rotates, then translates a point.
applyInverseTransform
in interface Tuple2DBasics
transform
- the geometric transform to apply on this point. Not modified.checkIfTransformInXYPlane
- whether this method should assert that the rotation part of
the given transform represents a transformation in the XY plane.NotAMatrix2DException
- if checkIfTransformInXYPlane == true
and the rotation
part of transform
is not a transformation in the XY plane.