get_points_ellipseget_points_ellipseGetPointsEllipseGetPointsEllipseget_points_ellipse (Operator)

Name

get_points_ellipseget_points_ellipseGetPointsEllipseGetPointsEllipseget_points_ellipse — 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)

def get_points_ellipse(angle: MaybeSequence[float], row: float, column: float, phi: float, radius_1: float, radius_2: float) -> Tuple[Sequence[float], Sequence[float]]

def get_points_ellipse_s(angle: MaybeSequence[float], row: float, column: float, phi: float, radius_1: float, radius_2: float) -> Tuple[float, float]

Beschreibung

get_points_ellipseget_points_ellipseGetPointsEllipseGetPointsEllipseGetPointsEllipseget_points_ellipse liefert den Punkt (RowPointRowPointRowPointRowPointrowPointrow_point,ColPointColPointColPointColPointcolPointcol_point) auf der übergebenen Ellipse in Abhängigkeit vom Winkel AngleAngleAngleAngleangleangle. Der Parameter AngleAngleAngleAngleangleangle 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 (RowRowRowRowrowrow, ColumnColumnColumnColumncolumncolumn), die Orientierung der Hauptachse PhiPhiPhiPhiphiphi relativ zur horizontalen Bildachse und die Länge der großen (Radius1Radius1Radius1Radius1radius1radius_1) bzw. kleinen Halbachse (Radius2Radius2Radius2Radius2radius2radius_2). 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 RowPointRowPointRowPointRowPointrowPointrow_point und ColPointColPointColPointColPointcolPointcol_point gehört zur Ellipse (orange). Er wird über den Winkel a und die Längen der beiden Halbachsen r1 (Radius1Radius1Radius1Radius1radius1radius_1) und r2 (Radius2Radius2Radius2Radius2radius2radius_2) bestimmt. Zur Vereinfachung der Darstellung wurde ein Winkel PhiPhiPhiPhiphiphi='0'"0""0""0""0""0" verwendet.

Ausführungsinformationen

Parameter

AngleAngleAngleAngleangleangle (input_control)  angle.rad(-array) HTupleMaybeSequence[float]HTupleHtuple (real) (double) (double) (double)

Winkel des gesuchten Punktes auf der Ellipse [rad].

Defaultwert: 0

Restriktion: Angle >= 0 && Angle <= 6.283185307

RowRowRowRowrowrow (input_control)  ellipse.center.y HTuplefloatHTupleHtuple (real) (double) (double) (double)

Zeilenkoordinate des Mittelpunktes der Ellipse.

ColumnColumnColumnColumncolumncolumn (input_control)  ellipse.center.x HTuplefloatHTupleHtuple (real) (double) (double) (double)

Spaltenkoordinate des Mittelpunktes der Ellipse.

PhiPhiPhiPhiphiphi (input_control)  ellipse.angle.rad HTuplefloatHTupleHtuple (real) (double) (double) (double)

Orientierung der Hauptachse in Bogenmaß.

Restriktion: Phi >= 0 && Phi <= 6.283185307

Radius1Radius1Radius1Radius1radius1radius_1 (input_control)  ellipse.radius1 HTuplefloatHTupleHtuple (real) (double) (double) (double)

Länge der großen Halbachse.

Restriktion: Radius1 > 0

Radius2Radius2Radius2Radius2radius2radius_2 (input_control)  ellipse.radius2 HTuplefloatHTupleHtuple (real) (double) (double) (double)

Länge der kleinen Halbachse.

Restriktion: Radius2 >= 0

RowPointRowPointRowPointRowPointrowPointrow_point (output_control)  point.y(-array) HTupleSequence[float]HTupleHtuple (real) (double) (double) (double)

Zeilenkoordinate des Ellipsenpunktes.

ColPointColPointColPointColPointcolPointcol_point (output_control)  point.x(-array) HTupleSequence[float]HTupleHtuple (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_ellipseGetPointsEllipseGetPointsEllipseGetPointsEllipseget_points_ellipse den Wert TRUE. Gegebenenfalls wird eine Fehlerbehandlung durchgeführt.

Vorgänger

fit_ellipse_contour_xldfit_ellipse_contour_xldFitEllipseContourXldFitEllipseContourXldFitEllipseContourXldfit_ellipse_contour_xld, draw_ellipsedraw_ellipseDrawEllipseDrawEllipseDrawEllipsedraw_ellipse, gen_ellipse_contour_xldgen_ellipse_contour_xldGenEllipseContourXldGenEllipseContourXldGenEllipseContourXldgen_ellipse_contour_xld

Siehe auch

gen_ellipse_contour_xldgen_ellipse_contour_xldGenEllipseContourXldGenEllipseContourXldGenEllipseContourXldgen_ellipse_contour_xld

Modul

Foundation