distance_pldistance_plDistancePlDistancePl (Operator)
Name
distance_pldistance_plDistancePlDistancePl
— Berechnen des Abstandes zwischen einem Punkt und einer Geraden.
Signatur
Herror distance_pl(double Row, double Column, double Row1, double Column1, double Row2, double Column2, double* Distance)
Herror T_distance_pl(const Htuple Row, const Htuple Column, const Htuple Row1, const Htuple Column1, const Htuple Row2, const Htuple Column2, Htuple* Distance)
void DistancePl(const HTuple& Row, const HTuple& Column, const HTuple& Row1, const HTuple& Column1, const HTuple& Row2, const HTuple& Column2, HTuple* Distance)
static HTuple HMisc::DistancePl(const HTuple& Row, const HTuple& Column, const HTuple& Row1, const HTuple& Column1, const HTuple& Row2, const HTuple& Column2)
static double HMisc::DistancePl(double Row, double Column, double Row1, double Column1, double Row2, double Column2)
static void HOperatorSet.DistancePl(HTuple row, HTuple column, HTuple row1, HTuple column1, HTuple row2, HTuple column2, out HTuple distance)
static HTuple HMisc.DistancePl(HTuple row, HTuple column, HTuple row1, HTuple column1, HTuple row2, HTuple column2)
static double HMisc.DistancePl(double row, double column, double row1, double column1, double row2, double column2)
Beschreibung
distance_pldistance_plDistancePlDistancePlDistancePl
berechnet den orthogonalen Abstand von
Punkten (RowRowRowRowrow
,ColumnColumnColumnColumncolumn
) zu Geraden,
gegeben durch zwei beliebige Punkte auf der Geraden.
Das Ergebnis wird im Parameter DistanceDistanceDistanceDistancedistance
übergeben.
Es ist möglich die Distanzen zwischen n Punkten und einer Geraden
oder die Distanzen zwischen n Punkten und n Geraden zu berechnen.
Ausführungsinformationen
- Multithreading-Typ: reentrant (läuft parallel zu nicht-exklusiven Operatoren).
- Multithreading-Bereich: global (kann von jedem Thread aufgerufen werden).
- Wird ohne Parallelisierung verarbeitet.
Parameter
RowRowRowRowrow
(input_control) point.y(-array) →
HTupleHTupleHtuple (real / integer) (double / int / long) (double / Hlong) (double / Hlong)
Zeilenkoordinate des Punktes.
ColumnColumnColumnColumncolumn
(input_control) point.x(-array) →
HTupleHTupleHtuple (real / integer) (double / int / long) (double / Hlong) (double / Hlong)
Spaltenkoordinate des Punktes.
Row1Row1Row1Row1row1
(input_control) point.y(-array) →
HTupleHTupleHtuple (real / integer) (double / int / long) (double / Hlong) (double / Hlong)
Zeilenkoordinate des ersten Punktes der Geraden.
Column1Column1Column1Column1column1
(input_control) point.x(-array) →
HTupleHTupleHtuple (real / integer) (double / int / long) (double / Hlong) (double / Hlong)
Spaltenkoordinate des ersten Punktes der Geraden.
Row2Row2Row2Row2row2
(input_control) point.y(-array) →
HTupleHTupleHtuple (real / integer) (double / int / long) (double / Hlong) (double / Hlong)
Zeilenkoordinate des zweiten Punktes der Geraden.
Column2Column2Column2Column2column2
(input_control) point.x(-array) →
HTupleHTupleHtuple (real / integer) (double / int / long) (double / Hlong) (double / Hlong)
Spaltenkoordinate des zweiten Punktes der Geraden.
DistanceDistanceDistanceDistancedistance
(output_control) real(-array) →
HTupleHTupleHtuple (real) (double) (double) (double)
Abstand zwischen den Punkten.
Beispiel (HDevelop)
dev_open_window (0, 0, 512, 512, 'black', WindowHandle)
draw_point (WindowHandle, Row, Column)
gen_cross_contour_xld (Cross, Row, Column, 15, 0)
draw_line (WindowHandle, Row1, Column1, Row2, Column2)
gen_contour_polygon_xld (Contour, [Row1,Row2], [Column1,Column2])
distance_pl (Row, Column, Row1, Column1, Row2, Column2, Distance)
Beispiel (C)
double row,column,row1,column1,row2,column2,distance;
draw_point(WindowHandle,&row,&column);
draw_line(WindowHandle,&row1,&column1,&row2,&column2);
distance_pl(row,column,row1,column1,row2,column2,&distance);
Beispiel (HDevelop)
dev_open_window (0, 0, 512, 512, 'black', WindowHandle)
draw_point (WindowHandle, Row, Column)
gen_cross_contour_xld (Cross, Row, Column, 15, 0)
draw_line (WindowHandle, Row1, Column1, Row2, Column2)
gen_contour_polygon_xld (Contour, [Row1,Row2], [Column1,Column2])
distance_pl (Row, Column, Row1, Column1, Row2, Column2, Distance)
Beispiel (HDevelop)
dev_open_window (0, 0, 512, 512, 'black', WindowHandle)
draw_point (WindowHandle, Row, Column)
gen_cross_contour_xld (Cross, Row, Column, 15, 0)
draw_line (WindowHandle, Row1, Column1, Row2, Column2)
gen_contour_polygon_xld (Contour, [Row1,Row2], [Column1,Column2])
distance_pl (Row, Column, Row1, Column1, Row2, Column2, Distance)
Beispiel (HDevelop)
dev_open_window (0, 0, 512, 512, 'black', WindowHandle)
draw_point (WindowHandle, Row, Column)
gen_cross_contour_xld (Cross, Row, Column, 15, 0)
draw_line (WindowHandle, Row1, Column1, Row2, Column2)
gen_contour_polygon_xld (Contour, [Row1,Row2], [Column1,Column2])
distance_pl (Row, Column, Row1, Column1, Row2, Column2, Distance)
Ergebnis
distance_pldistance_plDistancePlDistancePlDistancePl
liefert den Wert 2 (H_MSG_TRUE).
Alternativen
distance_psdistance_psDistancePsDistancePsDistancePs
Siehe auch
distance_ppdistance_ppDistancePpDistancePpDistancePp
,
distance_prdistance_prDistancePrDistancePrDistancePr
Modul
Foundation