dist_rectangle2_contour_points_xldT_dist_rectangle2_contour_points_xldDistRectangle2ContourPointsXldDistRectangle2ContourPointsXlddist_rectangle2_contour_points_xld (Operator)
Name
dist_rectangle2_contour_points_xldT_dist_rectangle2_contour_points_xldDistRectangle2ContourPointsXldDistRectangle2ContourPointsXlddist_rectangle2_contour_points_xld
— Compute the distances of all contour points to a rectangle.
Signature
void DistRectangle2ContourPointsXld(const HObject& Contour, const HTuple& ClippingEndPoints, const HTuple& Row, const HTuple& Column, const HTuple& Phi, const HTuple& Length1, const HTuple& Length2, HTuple* Distances)
HTuple HXLDCont::DistRectangle2ContourPointsXld(Hlong ClippingEndPoints, double Row, double Column, double Phi, double Length1, double Length2) const
static void HOperatorSet.DistRectangle2ContourPointsXld(HObject contour, HTuple clippingEndPoints, HTuple row, HTuple column, HTuple phi, HTuple length1, HTuple length2, out HTuple distances)
HTuple HXLDCont.DistRectangle2ContourPointsXld(int clippingEndPoints, double row, double column, double phi, double length1, double length2)
Description
dist_rectangle2_contour_points_xlddist_rectangle2_contour_points_xldDistRectangle2ContourPointsXldDistRectangle2ContourPointsXldDistRectangle2ContourPointsXlddist_rectangle2_contour_points_xld
determines the Euclidean
distances between the points of a contour ContourContourContourContourcontourcontour
and a
rectangle of arbitrary orientation specified by the center
(RowRowRowRowrowrow
, ColumnColumnColumnColumncolumncolumn
), the orientation PhiPhiPhiPhiphiphi
, and
the half edge lengths Length1Length1Length1Length1length1length_1
and Length2Length2Length2Length2length2length_2
. The
angle PhiPhiPhiPhiphiphi
must be given in radians and specifies the angle
between the horizontal axis and the edge with the half length
Length1Length1Length1Length1length1length_1
in the mathematically positive direction
(counterclockwise).
Depending on the processing used to create ContourContourContourContourcontourcontour
, the
start and end points of a contour may contain positional errors. In
this case, the operator fit_rectangle2_contour_xldfit_rectangle2_contour_xldFitRectangle2ContourXldFitRectangle2ContourXldFitRectangle2ContourXldfit_rectangle2_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. To compute the
distances of the same set of points as used in the fitting process,
ClippingEndPointsClippingEndPointsClippingEndPointsClippingEndPointsclippingEndPointsclipping_end_points
should be set to the same value as in
fit_rectangle2_contour_xldfit_rectangle2_contour_xldFitRectangle2ContourXldFitRectangle2ContourXldFitRectangle2ContourXldfit_rectangle2_contour_xld
.
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
ContourContourContourContourcontourcontour
(input_object) xld_cont →
objectHXLDContHObjectHXLDContHobject
Input contour.
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 value: 0
Suggested values: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10
Restriction: ClippingEndPoints >= 0
RowRowRowRowrowrow
(input_control) rectangle2.center.y →
HTuplefloatHTupleHtuple (real) (double) (double) (double)
Row coordinate of the center of the rectangle.
ColumnColumnColumnColumncolumncolumn
(input_control) rectangle2.center.x →
HTuplefloatHTupleHtuple (real) (double) (double) (double)
Column coordinate of the center of the rectangle.
PhiPhiPhiPhiphiphi
(input_control) rectangle2.angle.rad →
HTuplefloatHTupleHtuple (real) (double) (double) (double)
Orientation of the main axis of the rectangle [rad].
Length1Length1Length1Length1length1length_1
(input_control) rectangle2.hwidth →
HTuplefloatHTupleHtuple (real) (double) (double) (double)
First radius (half length) of the rectangle.
Restriction: Length1 > 0
Length2Length2Length2Length2length2length_2
(input_control) rectangle2.hheight →
HTuplefloatHTupleHtuple (real) (double) (double) (double)
Second radius (half width) of the rectangle.
Restriction: Length2 >= 0
DistancesDistancesDistancesDistancesdistancesdistances
(output_control) real-array →
HTupleSequence[float]HTupleHtuple (real) (double) (double) (double)
Distances of the contour points to the rectangle.
Result
dist_rectangle2_contour_points_xlddist_rectangle2_contour_points_xldDistRectangle2ContourPointsXldDistRectangle2ContourPointsXldDistRectangle2ContourPointsXlddist_rectangle2_contour_points_xld
returns 2 (H_MSG_TRUE) if all
parameter values are correct. If necessary, an exception is
raised.
Possible Predecessors
fit_rectangle2_contour_xldfit_rectangle2_contour_xldFitRectangle2ContourXldFitRectangle2ContourXldFitRectangle2ContourXldfit_rectangle2_contour_xld
Module
Foundation