HALCON Reference Manual 10.0.2
Table of Contents / Tools / Lines ClassesClassesClasses | | | Operators

line_positionline_positionline_positionLinePositionLinePosition (Operator)

Name

line_positionline_positionline_positionLinePositionLinePosition — Calculate the center of gravity, length, and orientation of a line.

Signature

line_position( : : RowBegin, ColBegin, RowEnd, ColEnd : RowCenter, ColCenter, Length, Phi)

Herror line_position(const Hlong RowBegin, const Hlong ColBegin, const Hlong RowEnd, const Hlong ColEnd, double* RowCenter, double* ColCenter, double* Length, double* Phi)

Herror T_line_position(const Htuple RowBegin, const Htuple ColBegin, const Htuple RowEnd, const Htuple ColEnd, Htuple* RowCenter, Htuple* ColCenter, Htuple* Length, Htuple* Phi)

Herror line_position(const HTuple& RowBegin, const HTuple& ColBegin, const HTuple& RowEnd, const HTuple& ColEnd, double* RowCenter, double* ColCenter, double* Length, double* Phi)

Herror line_position(const HTuple& RowBegin, const HTuple& ColBegin, const HTuple& RowEnd, const HTuple& ColEnd, HTuple* RowCenter, HTuple* ColCenter, HTuple* Length, HTuple* Phi)

void HOperatorSetX.LinePosition(
[in] VARIANT RowBegin, [in] VARIANT ColBegin, [in] VARIANT RowEnd, [in] VARIANT ColEnd, [out] VARIANT* RowCenter, [out] VARIANT* ColCenter, [out] VARIANT* Length, [out] VARIANT* Phi)

VARIANT HMiscX.LinePosition(
[in] VARIANT RowBegin, [in] VARIANT ColBegin, [in] VARIANT RowEnd, [in] VARIANT ColEnd, [out] VARIANT* ColCenter, [out] VARIANT* Length, [out] VARIANT* Phi)

static void HOperatorSet.LinePosition(HTuple rowBegin, HTuple colBegin, HTuple rowEnd, HTuple colEnd, out HTuple rowCenter, out HTuple colCenter, out HTuple length, out HTuple phi)

static void HMisc.LinePosition(HTuple rowBegin, HTuple colBegin, HTuple rowEnd, HTuple colEnd, out HTuple rowCenter, out HTuple colCenter, out HTuple length, out HTuple phi)

static void HMisc.LinePosition(int rowBegin, int colBegin, int rowEnd, int colEnd, out double rowCenter, out double colCenter, out double length, out double phi)

Description

The operator line_positionline_positionline_positionLinePositionLinePosition returns the center (RowCenterRowCenterRowCenterRowCenterrowCenter, ColCenterColCenterColCenterColCentercolCenter), the (Euclidean) length (LengthLengthLengthLengthlength) and the orientation (-pi/2 < PhiPhiPhiPhiphi <= pi/2) of the given lines. If more than one line is to be treated the line and column indices can be passed as tuples. In this case the output parameters, of course, are also tuples.

The routine is applied, for example, to model lines in order to determine search regions for the edge detection (detect_edge_segmentsdetect_edge_segmentsdetect_edge_segmentsDetectEdgeSegmentsDetectEdgeSegments).

Parallelization

Parameters

RowBeginRowBeginRowBeginRowBeginrowBegin (input_control)  line.begin.y(-array) HTupleHTupleVARIANTHtuple (integer) (int / long) (Hlong) (Hlong) (Hlong)

Row coordinates of the starting points of the input lines.

ColBeginColBeginColBeginColBegincolBegin (input_control)  line.begin.x(-array) HTupleHTupleVARIANTHtuple (integer) (int / long) (Hlong) (Hlong) (Hlong)

Column coordinates of the starting points of the input lines.

RowEndRowEndRowEndRowEndrowEnd (input_control)  line.end.y(-array) HTupleHTupleVARIANTHtuple (integer) (int / long) (Hlong) (Hlong) (Hlong)

Row coordinates of the ending points of the input lines.

ColEndColEndColEndColEndcolEnd (input_control)  line.end.x(-array) HTupleHTupleVARIANTHtuple (integer) (int / long) (Hlong) (Hlong) (Hlong)

Column coordinates of the ending points of the input lines.

RowCenterRowCenterRowCenterRowCenterrowCenter (output_control)  point.y(-array) HTupleHTupleVARIANTHtuple (real) (double) (double) (double) (double)

Row coordinates of the centers of gravity of the input lines.

ColCenterColCenterColCenterColCentercolCenter (output_control)  point.x(-array) HTupleHTupleVARIANTHtuple (real) (double) (double) (double) (double)

Column coordinates of the centers of gravity of the input lines.

LengthLengthLengthLengthlength (output_control)  real(-array) HTupleHTupleVARIANTHtuple (real) (double) (double) (double) (double)

Euclidean length of the input lines.

PhiPhiPhiPhiphi (output_control)  angle.rad(-array) HTupleHTupleVARIANTHtuple (real) (double) (double) (double) (double)

Orientation of the input lines.

Result

line_positionline_positionline_positionLinePositionLinePosition always returns the value 2 (H_MSG_TRUE).

Possible Predecessors

sobel_ampsobel_ampsobel_ampSobelAmpSobelAmp, edges_imageedges_imageedges_imageEdgesImageEdgesImage, thresholdthresholdthresholdThresholdThreshold, hysteresis_thresholdhysteresis_thresholdhysteresis_thresholdHysteresisThresholdHysteresisThreshold, split_skeleton_regionsplit_skeleton_regionsplit_skeleton_regionSplitSkeletonRegionSplitSkeletonRegion, split_skeleton_linessplit_skeleton_linessplit_skeleton_linesSplitSkeletonLinesSplitSkeletonLines

Possible Successors

set_line_widthset_line_widthset_line_widthSetLineWidthSetLineWidth, disp_linedisp_linedisp_lineDispLineDispLine

Alternatives

line_orientationline_orientationline_orientationLineOrientationLineOrientation, select_linesselect_linesselect_linesSelectLinesSelectLines, partition_linespartition_linespartition_linesPartitionLinesPartitionLines

See also

line_orientationline_orientationline_orientationLineOrientationLineOrientation, select_linesselect_linesselect_linesSelectLinesSelectLines, partition_linespartition_linespartition_linesPartitionLinesPartitionLines, detect_edge_segmentsdetect_edge_segmentsdetect_edge_segmentsDetectEdgeSegmentsDetectEdgeSegments

Module

Foundation


Table of Contents / Tools / Lines ClassesClassesClasses | | | Operators
HALCON Reference Manual 10.0.2 Copyright © 1996-2011 MVTec Software GmbH