Computes the coordinate transformation defined by four non-coplanar points given in two coordinate systems.
Namespace:
ceometric.VectorGeometryAssembly: ceometric.VectorGeometry (in ceometric.VectorGeometry.dll) Version: 1.8.0.0 (1.8.0.0)
Syntax
C# |
---|
public static CoordinateSystem Align( Point u1, Point u2, Point u3, Point u4, Point v1, Point v2, Point v3, Point v4 ) |
Visual Basic (Declaration) |
---|
Public Shared Function Align ( _ u1 As Point, _ u2 As Point, _ u3 As Point, _ u4 As Point, _ v1 As Point, _ v2 As Point, _ v3 As Point, _ v4 As Point _ ) As CoordinateSystem |
Visual C++ |
---|
public: static CoordinateSystem^ Align( Point^ u1, Point^ u2, Point^ u3, Point^ u4, Point^ v1, Point^ v2, Point^ v3, Point^ v4 ) |
Parameters
- u1
- Type: ceometric.VectorGeometry..::.Point
The first point in the first coordinate system.
- u2
- Type: ceometric.VectorGeometry..::.Point
The second point in the first coordinate system.
- u3
- Type: ceometric.VectorGeometry..::.Point
The third point in the first coordinate system.
- u4
- Type: ceometric.VectorGeometry..::.Point
The fourth point in the first coordinate system.
- v1
- Type: ceometric.VectorGeometry..::.Point
The first point in the second coordinate system.
- v2
- Type: ceometric.VectorGeometry..::.Point
The second point in the second coordinate system.
- v3
- Type: ceometric.VectorGeometry..::.Point
The third point in the second coordinate system.
- v4
- Type: ceometric.VectorGeometry..::.Point
The fourth point in the second coordinate system.
Return Value
Returns a coordinate system cs so that a coordinate transformation from the global coordinate system Global()()() to the system cs maps the point u1 on v1, u2 on v2, u3 on v3 and u4 on v4.Examples
CopyC#
Point u1 = new Point(0, 0, 0); Point u2 = new Point(1, 0, 0); Point u3 = new Point(0, 1, 0); Point u4 = new Point(0, 0, 1); Point v1 = new Point(0, 0, 1); // u1 is aligned with v1 Point v2 = new Point(1, 0, 1); // u2 is aligned with v2 Point v3 = new Point(0, 1, 1); // u3 is aligned with v3 Point v4 = new Point(0, 0, 2); // u4 is aligned with v4 // Get the transformation u->v // In this case, the coordinate transformation is just a translation by (0,0,1) CoordinateSystem ct = new CoordinateSystem(u1, u2, u3, u4, v1, v2, v3, v4); // coordinates of a point p in the system of u: Point p = new Point(0, 0, 1); // coordinates of p in the system of v are (0,0,0): p = p.TransformCoordinates(CoordinateSystem.Global(), ct);
Exceptions
Exception | Condition |
---|---|
System..::.ArithmeticException | The points in one or both systems are coplanar. |