Interface Embedding<S extends Space,P extends Point<S,P>,T extends Space,Q extends Point<T,Q>>

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

public interface Embedding<S extends Space,P extends Point<S,P>,T extends Space,Q extends Point<T,Q>>
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 Link icon

    Modifier and Type
    Method
    Description
    toSpace(Q point)
    Transform a sub-space point into a space point.
    toSubSpace(P point)
    Transform a space point into a sub-space point.
  • Method Details Link icon

    • toSubSpace Link icon

      Q toSubSpace(P 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 Link icon

      P toSpace(Q 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: