get_points_ellipseget_points_ellipseGetPointsEllipseGetPointsEllipse (Operator)
Name
get_points_ellipseget_points_ellipseGetPointsEllipseGetPointsEllipse
— Berechnen eines Punktes auf dem Perimeter einer Ellipse.
Signatur
Herror get_points_ellipse(double Angle, double Row, double Column, double Phi, double Radius1, double Radius2, double* RowPoint, double* ColPoint)
Herror T_get_points_ellipse(const Htuple Angle, const Htuple Row, const Htuple Column, const Htuple Phi, const Htuple Radius1, const Htuple Radius2, Htuple* RowPoint, Htuple* ColPoint)
void GetPointsEllipse(const HTuple& Angle, const HTuple& Row, const HTuple& Column, const HTuple& Phi, const HTuple& Radius1, const HTuple& Radius2, HTuple* RowPoint, HTuple* ColPoint)
static void HMisc::GetPointsEllipse(const HTuple& Angle, double Row, double Column, double Phi, double Radius1, double Radius2, HTuple* RowPoint, HTuple* ColPoint)
static void HMisc::GetPointsEllipse(double Angle, double Row, double Column, double Phi, double Radius1, double Radius2, double* RowPoint, double* ColPoint)
static void HOperatorSet.GetPointsEllipse(HTuple angle, HTuple row, HTuple column, HTuple phi, HTuple radius1, HTuple radius2, out HTuple rowPoint, out HTuple colPoint)
static void HMisc.GetPointsEllipse(HTuple angle, double row, double column, double phi, double radius1, double radius2, out HTuple rowPoint, out HTuple colPoint)
static void HMisc.GetPointsEllipse(double angle, double row, double column, double phi, double radius1, double radius2, out double rowPoint, out double colPoint)
Beschreibung
get_points_ellipseget_points_ellipseGetPointsEllipseGetPointsEllipseGetPointsEllipse
liefert den Punkt
(RowPointRowPointRowPointRowPointrowPoint
,ColPointColPointColPointColPointcolPoint
) auf der übergebenen Ellipse
in Abhängigkeit vom Winkel AngleAngleAngleAngleangle
.
Der Parameter AngleAngleAngleAngleangle
entspricht dabei der exzentrischen Anomalie und
beschreibt den Winkel in der Parameterdarstellung (siehe die
Darstellung weiter unten) in Abhängigkeit von der Hauptachse der Ellipse.
Die Ellipse selbst wird beschrieben durch
ihren Mittelpunkt (RowRowRowRowrow
, ColumnColumnColumnColumncolumn
), die
Orientierung der Hauptachse PhiPhiPhiPhiphi
relativ zur horizontalen
Bildachse und die Länge der großen
(Radius1Radius1Radius1Radius1radius1
) bzw. kleinen Halbachse (Radius2Radius2Radius2Radius2radius2
). Die Winkel
werden in Radiant entgegen dem Uhrzeigersinn gemessen.
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
AngleAngleAngleAngleangle
(input_control) angle.rad(-array) →
HTupleHTupleHtuple (real) (double) (double) (double)
Winkel des gesuchten Punktes auf der Ellipse [rad].
Defaultwert: 0
Restriktion: Angle >= 0 && Angle <= 6.283185307
RowRowRowRowrow
(input_control) ellipse.center.y →
HTupleHTupleHtuple (real) (double) (double) (double)
Zeilenkoordinate des Mittelpunktes der Ellipse.
ColumnColumnColumnColumncolumn
(input_control) ellipse.center.x →
HTupleHTupleHtuple (real) (double) (double) (double)
Spaltenkoordinate des Mittelpunktes der Ellipse.
PhiPhiPhiPhiphi
(input_control) ellipse.angle.rad →
HTupleHTupleHtuple (real) (double) (double) (double)
Orientierung der Hauptachse in Bogenmaß.
Restriktion: Phi >= 0 && Phi <= 6.283185307
Radius1Radius1Radius1Radius1radius1
(input_control) ellipse.radius1 →
HTupleHTupleHtuple (real) (double) (double) (double)
Länge der großen Halbachse.
Restriktion: Radius1 > 0
Radius2Radius2Radius2Radius2radius2
(input_control) ellipse.radius2 →
HTupleHTupleHtuple (real) (double) (double) (double)
Länge der kleinen Halbachse.
Restriktion: Radius2 >= 0
RowPointRowPointRowPointRowPointrowPoint
(output_control) point.y(-array) →
HTupleHTupleHtuple (real) (double) (double) (double)
Zeilenkoordinate des Ellipsenpunktes.
ColPointColPointColPointColPointcolPoint
(output_control) point.x(-array) →
HTupleHTupleHtuple (real) (double) (double) (double)
Spaltenkoordinate des Ellipsenpunktes.
Beispiel (HDevelop)
draw_ellipse(WindowHandle,Row,Column,Phi,Radius1,Radius2)
get_points_ellipse([0,3.14],Row,Column,Phi,Radius1,Radius2,\
RowPoint,ColPoint)
Ergebnis
Sind die Parameterwerte korrekt, dann liefert
get_points_ellipseget_points_ellipseGetPointsEllipseGetPointsEllipseGetPointsEllipse
den Wert 2 (H_MSG_TRUE). Gegebenenfalls
wird eine Fehlerbehandlung durchgeführt.
Vorgänger
fit_ellipse_contour_xldfit_ellipse_contour_xldFitEllipseContourXldFitEllipseContourXldFitEllipseContourXld
,
draw_ellipsedraw_ellipseDrawEllipseDrawEllipseDrawEllipse
,
gen_ellipse_contour_xldgen_ellipse_contour_xldGenEllipseContourXldGenEllipseContourXldGenEllipseContourXld
Siehe auch
gen_ellipse_contour_xldgen_ellipse_contour_xldGenEllipseContourXldGenEllipseContourXldGenEllipseContourXld
Modul
Foundation