| Operatoren |
angle_lx — Berechnen des Winkels zwischen einer Geraden und der horizontalen Achse.
angle_lx berechnet den Winkel zwischen einer Geraden und der Horizontalen. Als Eingabe werden die Koordinaten von zwei Punkten auf der Geraden (Row1,Column1, Row2,Column2) erwartet. Die Berechnung des Winkels geschieht wie folgt: Man interpretiert die Gerade als einen Vektor, wobei Row1,Column1 der Startpunkt und Row2,Column2 der Endpunkt sind. Der Startpunkt liegt dabei auf der Horizontalen und dient in der folgenden Überlegung als Drehpunkt. Liegt der Endpunkt des Vektors oberhalb der Horizontalen, ergibt sich der gesuchte Winkel (mit positivem Vorzeichen) aus der Rotation dieser Horizontalen gegen den Uhrzeigersinn auf den Vektor. Liegt der Endpunkt des Vektors unterhalb der Horizontalen, ergibt sich der gesuchte Winkel (mit negativem Vorzeichen) aus der Rotation dieser Horizontalen im Uhrzeigersinn auf den Vektor. Der Winkel ist also abhängig von der Reihenfolge der Koordinaten. Das Ergebnis, d.h. der Winkel in Bogenmaß, wird im Parameter Angle übergeben. Der Winkel liegt im Bereich von
Zeilenkoordinate des ersten Punktes der Geraden.
Spaltenkoordinate des ersten Punktes der Geraden.
Zeilenkoordinate des zweiten Punktes der Geraden.
Spaltenkoordinate des zweiten Punktes der Geraden.
Winkel zwischen der Geraden und der Horizontalen [rad].
dev_open_window (0, 0, 512, 512, 'black', WindowHandle) RowA1 := 255 ColumnA1 := 10 RowA2 := 255 ColumnA2 := 501 gen_contour_polygon_xld (Contour, [RowA1,RowA2], [ColumnA1,ColumnA2]) Row1 := 255 Column1 := 255 for I := 5 to 360 by 5 Row2 := 255 - sin(rad(I)) * 200 Column2 := 255 + cos(rad(I)) * 200 gen_contour_polygon_xld (Contour, [Row1,Row2], [Column1,Column2]) angle_lx (Row1, Column1, Row2, Column2, Angle) AngleDeg := deg(Angle) endfor
angle_lx liefert den Wert 2 (H_MSG_TRUE).
Foundation
| Operatoren |