Operator Reference

points_to_pluecker_linepoints_to_pluecker_linePointsToPlueckerLinePointsToPlueckerLinepoints_to_pluecker_line (Operator)

points_to_pluecker_linepoints_to_pluecker_linePointsToPlueckerLinePointsToPlueckerLinepoints_to_pluecker_line — Convert a 3D line given by two points to Plücker coordinates.

Signature

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_linepoints_to_pluecker_linePointsToPlueckerLinePointsToPlueckerLinepoints_to_pluecker_line converts the 3D line given by the two points (Point1XPoint1XPoint1Xpoint1Xpoint_1x, Point1YPoint1YPoint1Ypoint1Ypoint_1y, Point1ZPoint1ZPoint1Zpoint1Zpoint_1z) and (Point2XPoint2XPoint2Xpoint2Xpoint_2x, Point2YPoint2YPoint2Ypoint2Ypoint_2y, Point2ZPoint2ZPoint2Zpoint2Zpoint_2z) to Plücker coordinates (LineDirectionXLineDirectionXLineDirectionXlineDirectionXline_direction_x, LineDirectionYLineDirectionYLineDirectionYlineDirectionYline_direction_y, LineDirectionZLineDirectionZLineDirectionZlineDirectionZline_direction_z) and (LineMomentXLineMomentXLineMomentXlineMomentXline_moment_x, LineMomentYLineMomentYLineMomentYlineMomentYline_moment_y, LineMomentZLineMomentZLineMomentZlineMomentZline_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 (Point1XPoint1XPoint1Xpoint1Xpoint_1x, Point1YPoint1YPoint1Ypoint1Ypoint_1y, Point1ZPoint1ZPoint1Zpoint1Zpoint_1z) and the second point (Point2XPoint2XPoint2Xpoint2Xpoint_2x, Point2YPoint2YPoint2Ypoint2Ypoint_2y, Point2ZPoint2ZPoint2Zpoint2Zpoint_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

Point1XPoint1XPoint1Xpoint1Xpoint_1x (input_control)  point3d.x(-array) HTupleMaybeSequence[float]HTupleHtuple (real) (double) (double) (double)

X coordinates of the first point on the line.

Point1YPoint1YPoint1Ypoint1Ypoint_1y (input_control)  point3d.y(-array) HTupleMaybeSequence[float]HTupleHtuple (real) (double) (double) (double)

Y coordinates of the first point on the line.

Point1ZPoint1ZPoint1Zpoint1Zpoint_1z (input_control)  point3d.z(-array) HTupleMaybeSequence[float]HTupleHtuple (real) (double) (double) (double)

Z coordinates of the first point on the line.

Point2XPoint2XPoint2Xpoint2Xpoint_2x (input_control)  point3d.x(-array) HTupleMaybeSequence[float]HTupleHtuple (real) (double) (double) (double)

X coordinates of the second point on the line.

Point2YPoint2YPoint2Ypoint2Ypoint_2y (input_control)  point3d.y(-array) HTupleMaybeSequence[float]HTupleHtuple (real) (double) (double) (double)

Y coordinates of the second point on the line.

Point2ZPoint2ZPoint2Zpoint2Zpoint_2z (input_control)  point3d.z(-array) HTupleMaybeSequence[float]HTupleHtuple (real) (double) (double) (double)

Z coordinates of the second point on the line.

LineDirectionXLineDirectionXLineDirectionXlineDirectionXline_direction_x (output_control)  point3d.x(-array) HTupleSequence[float]HTupleHtuple (real) (double) (double) (double)

X component of the direction vector of the line.

LineDirectionYLineDirectionYLineDirectionYlineDirectionYline_direction_y (output_control)  point3d.y(-array) HTupleSequence[float]HTupleHtuple (real) (double) (double) (double)

Y component of the direction vector of the line.

LineDirectionZLineDirectionZLineDirectionZlineDirectionZline_direction_z (output_control)  point3d.z(-array) HTupleSequence[float]HTupleHtuple (real) (double) (double) (double)

Z component of the direction vector of the line.

LineMomentXLineMomentXLineMomentXlineMomentXline_moment_x (output_control)  point3d.x(-array) HTupleSequence[float]HTupleHtuple (real) (double) (double) (double)

X component of the moment vector of the line.

LineMomentYLineMomentYLineMomentYlineMomentYline_moment_y (output_control)  point3d.y(-array) HTupleSequence[float]HTupleHtuple (real) (double) (double) (double)

Y component of the moment vector of the line.

LineMomentZLineMomentZLineMomentZlineMomentZline_moment_z (output_control)  point3d.z(-array) HTupleSequence[float]HTupleHtuple (real) (double) (double) (double)

Z component of the moment vector of the line.

Possible Predecessors

get_line_of_sightget_line_of_sightGetLineOfSightGetLineOfSightget_line_of_sight

Possible Successors

distance_point_pluecker_linedistance_point_pluecker_lineDistancePointPlueckerLineDistancePointPlueckerLinedistance_point_pluecker_line, point_pluecker_line_to_hom_mat3dpoint_pluecker_line_to_hom_mat3dPointPlueckerLineToHomMat3dPointPlueckerLineToHomMat3dpoint_pluecker_line_to_hom_mat3d

Alternatives

point_direction_to_pluecker_linepoint_direction_to_pluecker_linePointDirectionToPlueckerLinePointDirectionToPlueckerLinepoint_direction_to_pluecker_line

See also

pluecker_line_to_pointspluecker_line_to_pointsPlueckerLineToPointsPlueckerLineToPointspluecker_line_to_points

Module

Foundation