distance_point_pluecker_linedistance_point_pluecker_lineDistancePointPlueckerLineDistancePointPlueckerLinedistance_point_pluecker_line (算子名称)

名称

distance_point_pluecker_linedistance_point_pluecker_lineDistancePointPlueckerLineDistancePointPlueckerLinedistance_point_pluecker_line — Calculate the distance between a 3D point and a 3D line given by Plücker coordinates.

参数签名

distance_point_pluecker_line( : : PointX, PointY, PointZ, LineDirectionX, LineDirectionY, LineDirectionZ, LineMomentX, LineMomentY, LineMomentZ : Distance)

Herror distance_point_pluecker_line(double PointX, double PointY, double PointZ, double LineDirectionX, double LineDirectionY, double LineDirectionZ, double LineMomentX, double LineMomentY, double LineMomentZ, double* Distance)

Herror T_distance_point_pluecker_line(const Htuple PointX, const Htuple PointY, const Htuple PointZ, const Htuple LineDirectionX, const Htuple LineDirectionY, const Htuple LineDirectionZ, const Htuple LineMomentX, const Htuple LineMomentY, const Htuple LineMomentZ, Htuple* Distance)

void DistancePointPlueckerLine(const HTuple& PointX, const HTuple& PointY, const HTuple& PointZ, const HTuple& LineDirectionX, const HTuple& LineDirectionY, const HTuple& LineDirectionZ, const HTuple& LineMomentX, const HTuple& LineMomentY, const HTuple& LineMomentZ, HTuple* Distance)

static HTuple HMisc::DistancePointPlueckerLine(const HTuple& PointX, const HTuple& PointY, const HTuple& PointZ, const HTuple& LineDirectionX, const HTuple& LineDirectionY, const HTuple& LineDirectionZ, const HTuple& LineMomentX, const HTuple& LineMomentY, const HTuple& LineMomentZ)

static double HMisc::DistancePointPlueckerLine(double PointX, double PointY, double PointZ, double LineDirectionX, double LineDirectionY, double LineDirectionZ, double LineMomentX, double LineMomentY, double LineMomentZ)

static void HOperatorSet.DistancePointPlueckerLine(HTuple pointX, HTuple pointY, HTuple pointZ, HTuple lineDirectionX, HTuple lineDirectionY, HTuple lineDirectionZ, HTuple lineMomentX, HTuple lineMomentY, HTuple lineMomentZ, out HTuple distance)

static HTuple HMisc.DistancePointPlueckerLine(HTuple pointX, HTuple pointY, HTuple pointZ, HTuple lineDirectionX, HTuple lineDirectionY, HTuple lineDirectionZ, HTuple lineMomentX, HTuple lineMomentY, HTuple lineMomentZ)

static double HMisc.DistancePointPlueckerLine(double pointX, double pointY, double pointZ, double lineDirectionX, double lineDirectionY, double lineDirectionZ, double lineMomentX, double lineMomentY, double lineMomentZ)

def distance_point_pluecker_line(point_x: MaybeSequence[float], point_y: MaybeSequence[float], point_z: MaybeSequence[float], line_direction_x: MaybeSequence[Union[float, int]], line_direction_y: MaybeSequence[Union[float, int]], line_direction_z: MaybeSequence[Union[float, int]], line_moment_x: MaybeSequence[Union[float, int]], line_moment_y: MaybeSequence[Union[float, int]], line_moment_z: MaybeSequence[Union[float, int]]) -> Sequence[float]

def distance_point_pluecker_line_s(point_x: MaybeSequence[float], point_y: MaybeSequence[float], point_z: MaybeSequence[float], line_direction_x: MaybeSequence[Union[float, int]], line_direction_y: MaybeSequence[Union[float, int]], line_direction_z: MaybeSequence[Union[float, int]], line_moment_x: MaybeSequence[Union[float, int]], line_moment_y: MaybeSequence[Union[float, int]], line_moment_z: MaybeSequence[Union[float, int]]) -> float

描述

distance_point_pluecker_linedistance_point_pluecker_lineDistancePointPlueckerLineDistancePointPlueckerLineDistancePointPlueckerLinedistance_point_pluecker_line calculates the orthogonal distance between 3D points and 3D lines. The result is returned in DistanceDistanceDistanceDistancedistancedistance. The input tuples can define 1 or n points and lines, respectively. The points are specified by (PointXPointXPointXPointXpointXpoint_x, PointYPointYPointYPointYpointYpoint_y, PointZPointZPointZPointZpointZpoint_z). The lines are given in Plücker coordinates (LineDirectionXLineDirectionXLineDirectionXLineDirectionXlineDirectionXline_direction_x, LineDirectionYLineDirectionYLineDirectionYLineDirectionYlineDirectionYline_direction_y, LineDirectionZLineDirectionZLineDirectionZLineDirectionZlineDirectionZline_direction_z) and (LineMomentXLineMomentXLineMomentXLineMomentXlineMomentXline_moment_x, LineMomentYLineMomentYLineMomentYLineMomentYlineMomentYline_moment_y, LineMomentZLineMomentZLineMomentZLineMomentZlineMomentZline_moment_z). For the definition of Plücker coordinates, see “Solution Guide III-C - 3D Vision”.

Let denote the point (PointXPointXPointXPointXpointXpoint_x, PointYPointYPointYPointYpointYpoint_y, PointZPointZPointZPointZpointZpoint_z), the direction (LineDirectionXLineDirectionXLineDirectionXLineDirectionXlineDirectionXline_direction_x, LineDirectionYLineDirectionYLineDirectionYLineDirectionYlineDirectionYline_direction_y, LineDirectionZLineDirectionZLineDirectionZLineDirectionZlineDirectionZline_direction_z), and the moment (LineMomentXLineMomentXLineMomentXLineMomentXlineMomentXline_moment_x, LineMomentYLineMomentYLineMomentYLineMomentYlineMomentYline_moment_y, LineMomentZLineMomentZLineMomentZLineMomentZlineMomentZline_moment_z) of the Plücker line. Furthermore, let denote the distance DistanceDistanceDistanceDistancedistancedistance. Then, , where denotes the cross product of two vectors.

运行信息

参数表

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

X coordinates of the original points.

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

Y coordinates of the original points.

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

Z coordinates of the original points.

LineDirectionXLineDirectionXLineDirectionXLineDirectionXlineDirectionXline_direction_x (input_control)  point3d.x(-array) HTupleMaybeSequence[Union[float, int]]HTupleHtuple (real / integer) (double / int / long) (double / Hlong) (double / Hlong)

X component of the direction vector of the corresponding line.

LineDirectionYLineDirectionYLineDirectionYLineDirectionYlineDirectionYline_direction_y (input_control)  point3d.y(-array) HTupleMaybeSequence[Union[float, int]]HTupleHtuple (real / integer) (double / int / long) (double / Hlong) (double / Hlong)

Y component of the direction vector of the corresponding line.

LineDirectionZLineDirectionZLineDirectionZLineDirectionZlineDirectionZline_direction_z (input_control)  point3d.z(-array) HTupleMaybeSequence[Union[float, int]]HTupleHtuple (real / integer) (double / int / long) (double / Hlong) (double / Hlong)

Z component of the direction vector of the corresponding line.

LineMomentXLineMomentXLineMomentXLineMomentXlineMomentXline_moment_x (input_control)  point3d.x(-array) HTupleMaybeSequence[Union[float, int]]HTupleHtuple (real / integer) (double / int / long) (double / Hlong) (double / Hlong)

X component of the moment vector of the corresponding line.

LineMomentYLineMomentYLineMomentYLineMomentYlineMomentYline_moment_y (input_control)  point3d.y(-array) HTupleMaybeSequence[Union[float, int]]HTupleHtuple (real / integer) (double / int / long) (double / Hlong) (double / Hlong)

Y component of the moment vector of the corresponding line.

LineMomentZLineMomentZLineMomentZLineMomentZlineMomentZline_moment_z (input_control)  point3d.z(-array) HTupleMaybeSequence[Union[float, int]]HTupleHtuple (real / integer) (double / int / long) (double / Hlong) (double / Hlong)

Z component of the moment vector of the corresponding line.

DistanceDistanceDistanceDistancedistancedistance (output_control)  real(-array) HTupleSequence[float]HTupleHtuple (real) (double) (double) (double)

Distance between the points and the lines.

可能的前置算子

points_to_pluecker_linepoints_to_pluecker_linePointsToPlueckerLinePointsToPlueckerLinePointsToPlueckerLinepoints_to_pluecker_line, point_direction_to_pluecker_linepoint_direction_to_pluecker_linePointDirectionToPlueckerLinePointDirectionToPlueckerLinePointDirectionToPlueckerLinepoint_direction_to_pluecker_line

可替代算子

distance_point_linedistance_point_lineDistancePointLineDistancePointLineDistancePointLinedistance_point_line

参考其它

point_pluecker_line_to_hom_mat3dpoint_pluecker_line_to_hom_mat3dPointPlueckerLineToHomMat3dPointPlueckerLineToHomMat3dPointPlueckerLineToHomMat3dpoint_pluecker_line_to_hom_mat3d

模块

Foundation