Interface Embedding<S extends Space,T extends Space>

Type Parameters:
S - Type of the embedding space.
T - Type of the embedded sub-space.
All Known Implementing Classes:
Circle, Line, Line, Plane

public interface Embedding<S extends Space,T extends Space>
This interface defines mappers between a space and one of its sub-spaces.

Sub-spaces are the lower dimensions subsets of a n-dimensions space. The (n-1)-dimension sub-spaces are specific sub-spaces known as hyperplanes. This interface can be used regardless of the dimensions differences. As an example, Line in 3D implements Embedding< Vector3D, Vector1D>, i.e. it maps directly dimensions 3 and 1.

In the 3D euclidean space, hyperplanes are 2D planes, and the 1D sub-spaces are lines.

Note that this interface is not intended to be implemented by Hipparchus users, it is only intended to be implemented within the library itself. New methods may be added even for minor versions, which breaks compatibility for external implementations.

See Also:
  • Method Summary

    Modifier and Type
    Method
    Description
    toSpace(Point<T> point)
    Transform a sub-space point into a space point.
    toSubSpace(Point<S> point)
    Transform a space point into a sub-space point.
  • Method Details

    • toSubSpace

      Point<T> toSubSpace(Point<S> point)
      Transform a space point into a sub-space point.
      Parameters:
      point - n-dimension point of the space
      Returns:
      (n-1)-dimension point of the sub-space corresponding to the specified space point
      See Also:
    • toSpace

      Point<S> toSpace(Point<T> point)
      Transform a sub-space point into a space point.
      Parameters:
      point - (n-1)-dimension point of the sub-space
      Returns:
      n-dimension point of the space corresponding to the specified sub-space point
      See Also: