Package org.apache.commons.math3.geometry.partitioning

# 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 Embeddinginvalid input: '<'`Vector3D`, {link org.apache.commons.math3.geometry.euclidean.oned.Vector1D 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 Apache Commons Math 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.

Since:
  3.0
See Also:
  - `Hyperplane`

## Method Summary

Modifier and Type
Method
Description
`Point<S>`
`toSpace(Point<T> point)`
Transform a sub-space point into a space point.
`Point<T>`
`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(org.apache.commons.math3.geometry.Point<T>)`

### 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:
  - `toSubSpace(org.apache.commons.math3.geometry.Point<S>)`