points_to_pluecker_line points_to_pluecker_line PointsToPlueckerLine PointsToPlueckerLine points_to_pluecker_line (Operator)
points_to_pluecker_line points_to_pluecker_line PointsToPlueckerLine PointsToPlueckerLine points_to_pluecker_line
— Convert a 3D line given by two points to Plücker coordinates.
Signature
points_to_pluecker_line ( : : Point1X , Point1Y , Point1Z , Point2X , Point2Y , Point2Z : LineDirectionX , LineDirectionY , LineDirectionZ , LineMomentX , LineMomentY , LineMomentZ )
Herror points_to_pluecker_line (double Point1X , double Point1Y , double Point1Z , double Point2X , double Point2Y , double Point2Z , double* LineDirectionX , double* LineDirectionY , double* LineDirectionZ , double* LineMomentX , double* LineMomentY , double* LineMomentZ )
Herror T_points_to_pluecker_line (const Htuple Point1X , const Htuple Point1Y , const Htuple Point1Z , const Htuple Point2X , const Htuple Point2Y , const Htuple Point2Z , Htuple* LineDirectionX , Htuple* LineDirectionY , Htuple* LineDirectionZ , Htuple* LineMomentX , Htuple* LineMomentY , Htuple* LineMomentZ )
void PointsToPlueckerLine (const HTuple& Point1X , const HTuple& Point1Y , const HTuple& Point1Z , const HTuple& Point2X , const HTuple& Point2Y , const HTuple& Point2Z , HTuple* LineDirectionX , HTuple* LineDirectionY , HTuple* LineDirectionZ , HTuple* LineMomentX , HTuple* LineMomentY , HTuple* LineMomentZ )
static void HMisc ::PointsToPlueckerLine (const HTuple& Point1X , const HTuple& Point1Y , const HTuple& Point1Z , const HTuple& Point2X , const HTuple& Point2Y , const HTuple& Point2Z , HTuple* LineDirectionX , HTuple* LineDirectionY , HTuple* LineDirectionZ , HTuple* LineMomentX , HTuple* LineMomentY , HTuple* LineMomentZ )
static void HMisc ::PointsToPlueckerLine (double Point1X , double Point1Y , double Point1Z , double Point2X , double Point2Y , double Point2Z , double* LineDirectionX , double* LineDirectionY , double* LineDirectionZ , double* LineMomentX , double* LineMomentY , double* LineMomentZ )
static void HOperatorSet .PointsToPlueckerLine (HTuple point1X , HTuple point1Y , HTuple point1Z , HTuple point2X , HTuple point2Y , HTuple point2Z , out HTuple lineDirectionX , out HTuple lineDirectionY , out HTuple lineDirectionZ , out HTuple lineMomentX , out HTuple lineMomentY , out HTuple lineMomentZ )
static void HMisc .PointsToPlueckerLine (HTuple point1X , HTuple point1Y , HTuple point1Z , HTuple point2X , HTuple point2Y , HTuple point2Z , out HTuple lineDirectionX , out HTuple lineDirectionY , out HTuple lineDirectionZ , out HTuple lineMomentX , out HTuple lineMomentY , out HTuple lineMomentZ )
static void HMisc .PointsToPlueckerLine (double point1X , double point1Y , double point1Z , double point2X , double point2Y , double point2Z , out double lineDirectionX , out double lineDirectionY , out double lineDirectionZ , out double lineMomentX , out double lineMomentY , out double lineMomentZ )
def points_to_pluecker_line (point_1x : MaybeSequence[float], point_1y : MaybeSequence[float], point_1z : MaybeSequence[float], point_2x : MaybeSequence[float], point_2y : MaybeSequence[float], point_2z : MaybeSequence[float]) -> Tuple[Sequence[float], Sequence[float], Sequence[float], Sequence[float], Sequence[float], Sequence[float]]
def points_to_pluecker_line_s (point_1x : MaybeSequence[float], point_1y : MaybeSequence[float], point_1z : MaybeSequence[float], point_2x : MaybeSequence[float], point_2y : MaybeSequence[float], point_2z : MaybeSequence[float]) -> Tuple[float, float, float, float, float, float]
Description
points_to_pluecker_line points_to_pluecker_line PointsToPlueckerLine PointsToPlueckerLine points_to_pluecker_line
converts the 3D line given by the
two points (Point1X Point1X Point1X point1X point_1x
, Point1Y Point1Y Point1Y point1Y point_1y
, Point1Z Point1Z Point1Z point1Z point_1z
)
and (Point2X Point2X Point2X point2X point_2x
, Point2Y Point2Y Point2Y point2Y point_2y
, Point2Z Point2Z Point2Z point2Z point_2z
) to
Plücker coordinates
(LineDirectionX LineDirectionX LineDirectionX lineDirectionX line_direction_x
, LineDirectionY LineDirectionY LineDirectionY lineDirectionY line_direction_y
, LineDirectionZ LineDirectionZ LineDirectionZ lineDirectionZ line_direction_z
)
and
(LineMomentX LineMomentX LineMomentX lineMomentX line_moment_x
, LineMomentY LineMomentY LineMomentY lineMomentY line_moment_y
, LineMomentZ LineMomentZ LineMomentZ lineMomentZ line_moment_z
).
For the definition of Plücker coordinates, see
“Solution Guide III-C - 3D Vision”
.
All input tuples must be of same length.
Let
denote the first point
(Point1X Point1X Point1X point1X point_1x
, Point1Y Point1Y Point1Y point1Y point_1y
, Point1Z Point1Z Point1Z point1Z point_1z
)
and
the second point
(Point2X Point2X Point2X point2X point_2x
, Point2Y Point2Y Point2Y point2Y point_2y
, Point2Z Point2Z Point2Z point2Z point_2z
) on the line.
To compute the line direction
, the
vector
and
its length
are computed.
If
, the points do not define a line
and an error is returned.
The line direction is given by
.
The line moment is given by the cross product
.
Execution Information
Multithreading type: reentrant (runs in parallel with non-exclusive operators).
Multithreading scope: global (may be called from any thread).
Processed without parallelization.
Parameters
Point1X Point1X Point1X point1X point_1x
(input_control) point3d.x(-array) →
HTuple MaybeSequence[float] HTuple Htuple (real) (double ) (double ) (double )
X coordinates of the first point on the line.
Point1Y Point1Y Point1Y point1Y point_1y
(input_control) point3d.y(-array) →
HTuple MaybeSequence[float] HTuple Htuple (real) (double ) (double ) (double )
Y coordinates of the first point on the line.
Point1Z Point1Z Point1Z point1Z point_1z
(input_control) point3d.z(-array) →
HTuple MaybeSequence[float] HTuple Htuple (real) (double ) (double ) (double )
Z coordinates of the first point on the line.
Point2X Point2X Point2X point2X point_2x
(input_control) point3d.x(-array) →
HTuple MaybeSequence[float] HTuple Htuple (real) (double ) (double ) (double )
X coordinates of the second point on the line.
Point2Y Point2Y Point2Y point2Y point_2y
(input_control) point3d.y(-array) →
HTuple MaybeSequence[float] HTuple Htuple (real) (double ) (double ) (double )
Y coordinates of the second point on the line.
Point2Z Point2Z Point2Z point2Z point_2z
(input_control) point3d.z(-array) →
HTuple MaybeSequence[float] HTuple Htuple (real) (double ) (double ) (double )
Z coordinates of the second point on the line.
LineDirectionX LineDirectionX LineDirectionX lineDirectionX line_direction_x
(output_control) point3d.x(-array) →
HTuple Sequence[float] HTuple Htuple (real) (double ) (double ) (double )
X component of the direction vector of the line.
LineDirectionY LineDirectionY LineDirectionY lineDirectionY line_direction_y
(output_control) point3d.y(-array) →
HTuple Sequence[float] HTuple Htuple (real) (double ) (double ) (double )
Y component of the direction vector of the line.
LineDirectionZ LineDirectionZ LineDirectionZ lineDirectionZ line_direction_z
(output_control) point3d.z(-array) →
HTuple Sequence[float] HTuple Htuple (real) (double ) (double ) (double )
Z component of the direction vector of the line.
LineMomentX LineMomentX LineMomentX lineMomentX line_moment_x
(output_control) point3d.x(-array) →
HTuple Sequence[float] HTuple Htuple (real) (double ) (double ) (double )
X component of the moment vector of the line.
LineMomentY LineMomentY LineMomentY lineMomentY line_moment_y
(output_control) point3d.y(-array) →
HTuple Sequence[float] HTuple Htuple (real) (double ) (double ) (double )
Y component of the moment vector of the line.
LineMomentZ LineMomentZ LineMomentZ lineMomentZ line_moment_z
(output_control) point3d.z(-array) →
HTuple Sequence[float] HTuple Htuple (real) (double ) (double ) (double )
Z component of the moment vector of the line.
Possible Predecessors
get_line_of_sight get_line_of_sight GetLineOfSight GetLineOfSight get_line_of_sight
Possible Successors
distance_point_pluecker_line distance_point_pluecker_line DistancePointPlueckerLine DistancePointPlueckerLine distance_point_pluecker_line
,
point_pluecker_line_to_hom_mat3d point_pluecker_line_to_hom_mat3d PointPlueckerLineToHomMat3d PointPlueckerLineToHomMat3d point_pluecker_line_to_hom_mat3d
Alternatives
point_direction_to_pluecker_line point_direction_to_pluecker_line PointDirectionToPlueckerLine PointDirectionToPlueckerLine point_direction_to_pluecker_line
See also
pluecker_line_to_points pluecker_line_to_points PlueckerLineToPoints PlueckerLineToPoints pluecker_line_to_points
Module
Foundation