ClassesClassesClassesClasses | | | | Operators

distance_lrdistance_lrDistanceLrdistance_lrDistanceLrDistanceLr (Operator)

Name

distance_lrdistance_lrDistanceLrdistance_lrDistanceLrDistanceLr — Calculate the distance between a line and a region.

Signature

distance_lr(Region : : Row1, Column1, Row2, Column2 : DistanceMin, DistanceMax)

Herror distance_lr(const Hobject Region, double Row1, double Column1, double Row2, double Column2, double* DistanceMin, double* DistanceMax)

Herror T_distance_lr(const Hobject Region, const Htuple Row1, const Htuple Column1, const Htuple Row2, const Htuple Column2, Htuple* DistanceMin, Htuple* DistanceMax)

Herror distance_lr(Hobject Region, const HTuple& Row1, const HTuple& Column1, const HTuple& Row2, const HTuple& Column2, double* DistanceMin, double* DistanceMax)

Herror distance_lr(Hobject Region, const HTuple& Row1, const HTuple& Column1, const HTuple& Row2, const HTuple& Column2, HTuple* DistanceMin, HTuple* DistanceMax)

HTuple HRegion::DistanceLr(const HTuple& Row1, const HTuple& Column1, const HTuple& Row2, const HTuple& Column2, HTuple* DistanceMax) const

void DistanceLr(const HObject& Region, const HTuple& Row1, const HTuple& Column1, const HTuple& Row2, const HTuple& Column2, HTuple* DistanceMin, HTuple* DistanceMax)

void HRegion::DistanceLr(const HTuple& Row1, const HTuple& Column1, const HTuple& Row2, const HTuple& Column2, HTuple* DistanceMin, HTuple* DistanceMax) const

void HRegion::DistanceLr(double Row1, double Column1, double Row2, double Column2, double* DistanceMin, double* DistanceMax) const

void HOperatorSetX.DistanceLr(
[in] IHUntypedObjectX* Region, [in] VARIANT Row1, [in] VARIANT Column1, [in] VARIANT Row2, [in] VARIANT Column2, [out] VARIANT* DistanceMin, [out] VARIANT* DistanceMax)

VARIANT HRegionX.DistanceLr(
[in] VARIANT Row1, [in] VARIANT Column1, [in] VARIANT Row2, [in] VARIANT Column2, [out] VARIANT* DistanceMax)

static void HOperatorSet.DistanceLr(HObject region, HTuple row1, HTuple column1, HTuple row2, HTuple column2, out HTuple distanceMin, out HTuple distanceMax)

void HRegion.DistanceLr(HTuple row1, HTuple column1, HTuple row2, HTuple column2, out HTuple distanceMin, out HTuple distanceMax)

void HRegion.DistanceLr(double row1, double column1, double row2, double column2, out double distanceMin, out double distanceMax)

Description

The operator distance_lrdistance_lrDistanceLrdistance_lrDistanceLrDistanceLr calculates the orthogonal distance between a line and one region. As input the coordinates of two points on a line (Row1Row1Row1Row1Row1row1,Column1Column1Column1Column1Column1column1, Row2Row2Row2Row2Row2row2,Column2Column2Column2Column2Column2column2) and one region are expected. The parameters DistanceMinDistanceMinDistanceMinDistanceMinDistanceMindistanceMin and DistanceMaxDistanceMaxDistanceMaxDistanceMaxDistanceMaxdistanceMax return the result of the calculation.

Attention

Due to efficiency of distance_lrdistance_lrDistanceLrdistance_lrDistanceLrDistanceLr holes are ignored.

Parallelization

Parameters

RegionRegionRegionRegionRegionregion (input_object)  region objectHRegionHRegionHRegionHRegionXHobject

Input region.

Row1Row1Row1Row1Row1row1 (input_control)  point.y(-array) HTupleHTupleHTupleVARIANTHtuple (real / integer) (double / int / long) (double / Hlong) (double / Hlong) (double / Hlong) (double / Hlong)

Row coordinate of the first point of the line.

Column1Column1Column1Column1Column1column1 (input_control)  point.x(-array) HTupleHTupleHTupleVARIANTHtuple (real / integer) (double / int / long) (double / Hlong) (double / Hlong) (double / Hlong) (double / Hlong)

Column coordinate of the first point of the line.

Row2Row2Row2Row2Row2row2 (input_control)  point.y(-array) HTupleHTupleHTupleVARIANTHtuple (real / integer) (double / int / long) (double / Hlong) (double / Hlong) (double / Hlong) (double / Hlong)

Row coordinate of the second point of the line.

Column2Column2Column2Column2Column2column2 (input_control)  point.x(-array) HTupleHTupleHTupleVARIANTHtuple (real / integer) (double / int / long) (double / Hlong) (double / Hlong) (double / Hlong) (double / Hlong)

Column coordinate of the second point of the line.

DistanceMinDistanceMinDistanceMinDistanceMinDistanceMindistanceMin (output_control)  real(-array) HTupleHTupleHTupleVARIANTHtuple (real) (double) (double) (double) (double) (double)

Minimum distance between the line and the region

DistanceMaxDistanceMaxDistanceMaxDistanceMaxDistanceMaxdistanceMax (output_control)  real(-array) HTupleHTupleHTupleVARIANTHtuple (real) (double) (double) (double) (double) (double)

Maximum distance between the line and the region

Example (HDevelop)

gen_circle (Circle, 200, 200, 100.5)
Column1 := 300
Column2 := 400
for Row := 50 to 350 by 50
  gen_contour_polygon_xld (Line, [Row,Row], [Column1,Column2])
  distance_lr (Circle, Row, Column1, Row, Column2, DistanceMin, DistanceMax)
endfor

Result

distance_lrdistance_lrDistanceLrdistance_lrDistanceLrDistanceLr returns 2 (H_MSG_TRUE).

Alternatives

distance_lcdistance_lcDistanceLcdistance_lcDistanceLcDistanceLc, distance_prdistance_prDistancePrdistance_prDistancePrDistancePr, distance_srdistance_srDistanceSrdistance_srDistanceSrDistanceSr, diameter_regiondiameter_regionDiameterRegiondiameter_regionDiameterRegionDiameterRegion

See also

hamming_distancehamming_distanceHammingDistancehamming_distanceHammingDistanceHammingDistance, select_region_pointselect_region_pointSelectRegionPointselect_region_pointSelectRegionPointSelectRegionPoint, test_region_pointtest_region_pointTestRegionPointtest_region_pointTestRegionPointTestRegionPoint, smallest_rectangle2smallest_rectangle2SmallestRectangle2smallest_rectangle2SmallestRectangle2SmallestRectangle2

Module

Foundation


ClassesClassesClassesClasses | | | | Operators