coordsys_bridge_traits
namespace nin {
template <typename Br>
concept coordsys_bridge_traits;
}
Any coordinate system bridge must satisfy the coordsys_bridge_traits concept.
A bridge connects two coordinate systems that live in different spaces — for example,
linking a 2D planar (R2) coordinate system with a 3D spatial (R3) one.
Requirements
A type Br satisfies coordsys_bridge_traits if:
| Requirement | Description |
|---|---|
|
The first coordinate system traits type. Must satisfy |
|
The second coordinate system traits type. Must satisfy |
Inherits |
The bridge is itself a coordinate system in space A. |
Inherits |
The bridge is also a coordinate system in space B. |
|
Converts a coordinate from space A to space B. |
|
Converts a coordinate from space B to space A. |
Because a bridge inherits from coordsys on both sides, it occupies a position in the
kinematic tree of both spaces simultaneously. This is what allows mapCS() to traverse
from a coordinate system in space A, through the bridge, and into space B.