get_points_ellipseget_points_ellipseGetPointsEllipseGetPointsEllipse (Operator)

Name

get_points_ellipseget_points_ellipseGetPointsEllipseGetPointsEllipse — Berechnen eines Punktes auf dem Perimeter einer Ellipse.

Signatur

get_points_ellipse( : : Angle, Row, Column, Phi, Radius1, Radius2 : RowPoint, ColPoint)

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.

image/svg+xml r2 r1 r2 sin(a) r1 cos(a) a P
Der Punkt P mit den Koordinaten RowPointRowPointRowPointRowPointrowPoint und ColPointColPointColPointColPointcolPoint gehört zur Ellipse (orange). Er wird über den Winkel a und die Längen der beiden Halbachsen r1 (Radius1Radius1Radius1Radius1radius1) und r2 (Radius2Radius2Radius2Radius2radius2) bestimmt. Zur Vereinfachung der Darstellung wurde ein Winkel PhiPhiPhiPhiphi='0'"0""0""0""0" verwendet.

Ausführungsinformationen

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