Skip to content

line_orientationLineOrientationLineOrientationline_orientationline_orientation🔗

Short description🔗

line_orientationLineOrientationLineOrientationline_orientationline_orientation — Calculate the orientation of lines.

Signature🔗

line_orientation( line.begin.y RowBegin, line.begin.x ColBegin, line.end.y RowEnd, line.end.x ColEnd, out angle.rad Phi )void LineOrientation( const HTuple& RowBegin, const HTuple& ColBegin, const HTuple& RowEnd, const HTuple& ColEnd, HTuple* Phi )static void HOperatorSet.LineOrientation( HTuple rowBegin, HTuple colBegin, HTuple rowEnd, HTuple colEnd, out HTuple phi )def line_orientation( row_begin: MaybeSequence[Union[int, float]], col_begin: MaybeSequence[Union[int, float]], row_end: MaybeSequence[Union[int, float]], col_end: MaybeSequence[Union[int, float]] ) -> Sequence[float]

def line_orientation_s( row_begin: MaybeSequence[Union[int, float]], col_begin: MaybeSequence[Union[int, float]], row_end: MaybeSequence[Union[int, float]], col_end: MaybeSequence[Union[int, float]] ) -> floatHerror line_orientation( double RowBegin, double ColBegin, double RowEnd, double ColEnd, double* Phi )

Herror T_line_orientation( const Htuple RowBegin, const Htuple ColBegin, const Htuple RowEnd, const Htuple ColEnd, Htuple* Phi )

static HTuple HMisc::LineOrientation( const HTuple& RowBegin, const HTuple& ColBegin, const HTuple& RowEnd, const HTuple& ColEnd )

static double HMisc::LineOrientation( double RowBegin, double ColBegin, double RowEnd, double ColEnd )

static HTuple HMisc.LineOrientation( HTuple rowBegin, HTuple colBegin, HTuple rowEnd, HTuple colEnd )

static double HMisc.LineOrientation( double rowBegin, double colBegin, double rowEnd, double colEnd )

Description🔗

The operator line_orientationLineOrientation returns the orientation (\(-\pi/2 < \textrm{Phi} <= \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 Phiphiphi is, of course, also a tuple and contains the corresponding orientations.

Execution information🔗

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🔗

RowBeginrowBeginrow_begin (input_control) line.begin.y(-array) → (real / integer)HTuple (double / Hlong)HTuple (double / int / long)MaybeSequence[Union[int, float]]Htuple (double / Hlong)

Row coordinates of the starting points of the input lines.

ColBegincolBegincol_begin (input_control) line.begin.x(-array) → (real / integer)HTuple (double / Hlong)HTuple (double / int / long)MaybeSequence[Union[int, float]]Htuple (double / Hlong)

Column coordinates of the starting points of the input lines.

RowEndrowEndrow_end (input_control) line.end.y(-array) → (real / integer)HTuple (double / Hlong)HTuple (double / int / long)MaybeSequence[Union[int, float]]Htuple (double / Hlong)

Row coordinates of the ending points of the input lines.

ColEndcolEndcol_end (input_control) line.end.x(-array) → (real / integer)HTuple (double / Hlong)HTuple (double / int / long)MaybeSequence[Union[int, float]]Htuple (double / Hlong)

Column coordinates of the ending points of the input lines.

Phiphiphi (output_control) angle.rad(-array) → (real)HTuple (double)HTuple (double)Sequence[float]Htuple (double)

Orientation of the input lines.

Result🔗

line_orientationLineOrientation always returns the value 2 (H_MSG_TRUE).

Combinations with other operators🔗

Combinations

Possible predecessors

sobel_ampSobelAmp, edges_imageEdgesImage, thresholdThreshold, hysteresis_thresholdHysteresisThreshold, split_skeleton_regionSplitSkeletonRegion, split_skeleton_linesSplitSkeletonLines

Possible successors

set_line_widthSetLineWidth, disp_lineDispLine

Alternatives

line_positionLinePosition

See also

line_positionLinePosition, detect_edge_segmentsDetectEdgeSegments

Module🔗

Foundation