dist_ellipse_contour_points_xldT_dist_ellipse_contour_points_xldDistEllipseContourPointsXldDistEllipseContourPointsXlddist_ellipse_contour_points_xld (算子名称)
名称
dist_ellipse_contour_points_xldT_dist_ellipse_contour_points_xldDistEllipseContourPointsXldDistEllipseContourPointsXlddist_ellipse_contour_points_xld — Compute the distances of all contour points to an ellipse.
参数签名
void DistEllipseContourPointsXld(const HObject& Contour, const HTuple& DistanceMode, const HTuple& ClippingEndPoints, const HTuple& Row, const HTuple& Column, const HTuple& Phi, const HTuple& Radius1, const HTuple& Radius2, HTuple* Distances)
HTuple HXLDCont::DistEllipseContourPointsXld(const HString& DistanceMode, Hlong ClippingEndPoints, double Row, double Column, double Phi, double Radius1, double Radius2) const
HTuple HXLDCont::DistEllipseContourPointsXld(const char* DistanceMode, Hlong ClippingEndPoints, double Row, double Column, double Phi, double Radius1, double Radius2) const
HTuple HXLDCont::DistEllipseContourPointsXld(const wchar_t* DistanceMode, Hlong ClippingEndPoints, double Row, double Column, double Phi, double Radius1, double Radius2) const
(
Windows only)
static void HOperatorSet.DistEllipseContourPointsXld(HObject contour, HTuple distanceMode, HTuple clippingEndPoints, HTuple row, HTuple column, HTuple phi, HTuple radius1, HTuple radius2, out HTuple distances)
HTuple HXLDCont.DistEllipseContourPointsXld(string distanceMode, int clippingEndPoints, double row, double column, double phi, double radius1, double radius2)
描述
该算子 dist_ellipse_contour_points_xlddist_ellipse_contour_points_xldDistEllipseContourPointsXldDistEllipseContourPointsXldDistEllipseContourPointsXlddist_ellipse_contour_points_xld determines the
distances between points of a contour ContourContourContourContourcontourcontour and an ellipse
specified by the center (RowRowRowRowrowrow, ColumnColumnColumnColumncolumncolumn), the
orientation of the main axis PhiPhiPhiPhiphiphi,
the length of the larger half axis Radius1Radius1Radius1Radius1radius1radius_1, and the
length of the smaller half axis Radius2Radius2Radius2Radius2radius2radius_2.
The distance measure is the geometric distance, sometimes also called
orthogonal distance. The distances DistancesDistancesDistancesDistancesdistancesdistances are returned for
all points of the contour.
Normally, the distance is a positive value. In this case
DistanceModeDistanceModeDistanceModeDistanceModedistanceModedistance_mode equal to 'unsigned'"unsigned""unsigned""unsigned""unsigned""unsigned" must be chosen.
If this option is switched to 'signed'"signed""signed""signed""signed""signed" the distances can take
positive or negative sign, depending on whether the contour points lie
outside or inside the ellipse respectively.
Because of artifacts in the preprocessing, the start and end points
of a contour might be faulty. In this case, 该算子
fit_ellipse_contour_xldfit_ellipse_contour_xldFitEllipseContourXldFitEllipseContourXldFitEllipseContourXldfit_ellipse_contour_xld is typically called with the parameter
ClippingEndPointsClippingEndPointsClippingEndPointsClippingEndPointsclippingEndPointsclipping_end_points set to a value greater than zero to exclude
points at the beginning and the end of the contour from the computation.
In order to get the geometric distances of the same set of points as used
in the fitting process ClippingEndPointsClippingEndPointsClippingEndPointsClippingEndPointsclippingEndPointsclipping_end_points should take
the same value.
运行信息
- 多线程类型:可重入(与非独占操作符并行运行)。
- 多线程作用域:全局(可以从任何线程调用)。
- 未经并行化处理。
参数表
ContourContourContourContourcontourcontour (input_object) xld_cont → objectHXLDContHObjectHXLDContHobject
Input contours.
DistanceModeDistanceModeDistanceModeDistanceModedistanceModedistance_mode (input_control) string → HTuplestrHTupleHtuple (string) (string) (HString) (char*)
Mode for unsigned or signed distance values.
Default:
'unsigned'
"unsigned"
"unsigned"
"unsigned"
"unsigned"
"unsigned"
List of values:
'signed'"signed""signed""signed""signed""signed", 'unsigned'"unsigned""unsigned""unsigned""unsigned""unsigned"
ClippingEndPointsClippingEndPointsClippingEndPointsClippingEndPointsclippingEndPointsclipping_end_points (input_control) integer → HTupleintHTupleHtuple (integer) (int / long) (Hlong) (Hlong)
Number of points at the beginning and the end of the
contours to be ignored for the computation of
distances.
Default:
0
Restriction:
ClippingEndPoints >= 0
RowRowRowRowrowrow (input_control) ellipse.center.y → HTuplefloatHTupleHtuple (real) (double) (double) (double)
Row coordinate of the center of the ellipse.
ColumnColumnColumnColumncolumncolumn (input_control) ellipse.center.x → HTuplefloatHTupleHtuple (real) (double) (double) (double)
Column coordinate of the center of the ellipse.
PhiPhiPhiPhiphiphi (input_control) ellipse.angle.rad → HTuplefloatHTupleHtuple (real) (double) (double) (double)
Orientation of the main axis in radian.
Restriction:
Phi >= 0 && Phi <= 6.283185307
Radius1Radius1Radius1Radius1radius1radius_1 (input_control) ellipse.radius1 → HTuplefloatHTupleHtuple (real) (double) (double) (double)
Length of the larger half axis.
Restriction:
Radius1 > 0
Radius2Radius2Radius2Radius2radius2radius_2 (input_control) ellipse.radius2 → HTuplefloatHTupleHtuple (real) (double) (double) (double)
Length of the smaller half axis.
Restriction:
Radius2 >= 0 && Radius2 <= Radius1
DistancesDistancesDistancesDistancesdistancesdistances (output_control) real-array → HTupleSequence[float]HTupleHtuple (real) (double) (double) (double)
Distances of the contour points to the ellipse.
结果
dist_ellipse_contour_points_xlddist_ellipse_contour_points_xldDistEllipseContourPointsXldDistEllipseContourPointsXldDistEllipseContourPointsXlddist_ellipse_contour_points_xld returns 2 (
H_MSG_TRUE)
if all parameter
values are correct. 如有必要,将引发异常。
可能的前置算子
fit_ellipse_contour_xldfit_ellipse_contour_xldFitEllipseContourXldFitEllipseContourXldFitEllipseContourXldfit_ellipse_contour_xld
可替代算子
dist_ellipse_contour_xlddist_ellipse_contour_xldDistEllipseContourXldDistEllipseContourXldDistEllipseContourXlddist_ellipse_contour_xld
模块
Foundation