Interface EuclideanTransform<V extends EuclideanVector<V>>

Type Parameters:
V - Vector implementation type
All Superinterfaces:
Function<V,V>, Transform<V>, UnaryOperator<V>
All Known Subinterfaces:
Rotation3D
All Known Implementing Classes:
AbstractAffineTransformMatrix, AffineTransformMatrix1D, AffineTransformMatrix2D, AffineTransformMatrix3D, QuaternionRotation, Rotation2D

public interface EuclideanTransform<V extends EuclideanVector<V>> extends Transform<V>
Interface representing affine transforms in Euclidean space. An affine transform is one that preserves points, straight lines, planes, and sets of parallel lines. Common affine transforms include translation, rotation, scaling, reflection and any compositions thereof.
See Also:
  • Method Details

    • applyVector

      V applyVector(V vec)
      Apply this transform to the given vector, ignoring translations.

      This method can be used to transform vector instances representing displacements between points. For example, if v represents the difference between points p1 and p2, then transform.applyVector(v) will represent the difference between p1 and p2 after transform is applied.

      Parameters:
      vec - the vector to transform
      Returns:
      the new, transformed vector