intersection_segment_circleintersection_segment_circleIntersectionSegmentCircleIntersectionSegmentCircle (Operator)

Name

intersection_segment_circleintersection_segment_circleIntersectionSegmentCircleIntersectionSegmentCircle — Berechnet die Schnittpunkte von einem Geradenabschnitt und einem Kreis oder Kreisbogen

Signatur

intersection_segment_circle( : : SegmentRow1, SegmentColumn1, SegmentRow2, SegmentColumn2, CircleRow, CircleColumn, CircleRadius, CircleStartPhi, CircleEndPhi, CirclePointOrder : Row, Column)

Herror intersection_segment_circle(double SegmentRow1, double SegmentColumn1, double SegmentRow2, double SegmentColumn2, double CircleRow, double CircleColumn, double CircleRadius, double CircleStartPhi, double CircleEndPhi, const char* CirclePointOrder, double* Row, double* Column)

Herror T_intersection_segment_circle(const Htuple SegmentRow1, const Htuple SegmentColumn1, const Htuple SegmentRow2, const Htuple SegmentColumn2, const Htuple CircleRow, const Htuple CircleColumn, const Htuple CircleRadius, const Htuple CircleStartPhi, const Htuple CircleEndPhi, const Htuple CirclePointOrder, Htuple* Row, Htuple* Column)

void IntersectionSegmentCircle(const HTuple& SegmentRow1, const HTuple& SegmentColumn1, const HTuple& SegmentRow2, const HTuple& SegmentColumn2, const HTuple& CircleRow, const HTuple& CircleColumn, const HTuple& CircleRadius, const HTuple& CircleStartPhi, const HTuple& CircleEndPhi, const HTuple& CirclePointOrder, HTuple* Row, HTuple* Column)

static void HOperatorSet.IntersectionSegmentCircle(HTuple segmentRow1, HTuple segmentColumn1, HTuple segmentRow2, HTuple segmentColumn2, HTuple circleRow, HTuple circleColumn, HTuple circleRadius, HTuple circleStartPhi, HTuple circleEndPhi, HTuple circlePointOrder, out HTuple row, out HTuple column)

Beschreibung

intersection_segment_circleintersection_segment_circleIntersectionSegmentCircleIntersectionSegmentCircleIntersectionSegmentCircle berechnet den Schnittpunkt von einem Geradenabschnitt und einem Kreis oder Kreisbogen. Der Geradenabschnitt wird über dessen Endpunkte (SegmentRow1SegmentRow1SegmentRow1SegmentRow1segmentRow1,SegmentColumn1SegmentColumn1SegmentColumn1SegmentColumn1segmentColumn1) und (SegmentRow2SegmentRow2SegmentRow2SegmentRow2segmentRow2,SegmentColumn2SegmentColumn2SegmentColumn2SegmentColumn2segmentColumn2), der Kreis über dessen Mittelpunkt (CircleRowCircleRowCircleRowCircleRowcircleRow,CircleColumnCircleColumnCircleColumnCircleColumncircleColumn) und Radius CircleRadiusCircleRadiusCircleRadiusCircleRadiuscircleRadius definiert. Ein Kreisbogen wird zusätzlich durch den Anfangs- und Endwinkel CircleStartPhiCircleStartPhiCircleStartPhiCircleStartPhicircleStartPhi und CircleEndPhiCircleEndPhiCircleEndPhiCircleEndPhicircleEndPhi des Start- bzw. Endpunktes, sowie durch dessen Umlaufsinn CirclePointOrderCirclePointOrderCirclePointOrderCirclePointOrdercirclePointOrder charakterisiert. CirclePointOrderCirclePointOrderCirclePointOrderCirclePointOrdercirclePointOrder = 'positive'"positive""positive""positive""positive" definiert den Kreisbogen gegen den Uhrzeigersinn. CirclePointOrderCirclePointOrderCirclePointOrderCirclePointOrdercirclePointOrder = 'negative'"negative""negative""negative""negative" definiert den Kreisbogen im Uhrzeigersinn. Die Schnittpunkte, falls vorhanden, werden in (RowRowRowRowrow,ColumnColumnColumnColumncolumn) zurückgegeben.

Ausführungsinformationen

Parameter

SegmentRow1SegmentRow1SegmentRow1SegmentRow1segmentRow1 (input_control)  point.y HTupleHTupleHtuple (real / integer) (double / int / long) (double / Hlong) (double / Hlong)

Zeilenkoordinate des ersten Punktes des Geradenabschnitts.

SegmentColumn1SegmentColumn1SegmentColumn1SegmentColumn1segmentColumn1 (input_control)  point.x HTupleHTupleHtuple (real / integer) (double / int / long) (double / Hlong) (double / Hlong)

Spaltenkoordinate des ersten Punktes des Geradenabschnitts.

SegmentRow2SegmentRow2SegmentRow2SegmentRow2segmentRow2 (input_control)  point.y HTupleHTupleHtuple (real / integer) (double / int / long) (double / Hlong) (double / Hlong)

Zeilenkoordinate des zweiten Punktes des Geradenabschnitts.

SegmentColumn2SegmentColumn2SegmentColumn2SegmentColumn2segmentColumn2 (input_control)  point.x HTupleHTupleHtuple (real / integer) (double / int / long) (double / Hlong) (double / Hlong)

Spaltenkoordinate des zweiten Punktes des Geradenabschnitts.

CircleRowCircleRowCircleRowCircleRowcircleRow (input_control)  circle.center.y HTupleHTupleHtuple (real / integer) (double / int / long) (double / Hlong) (double / Hlong)

Zeilenkoordinate des Kreismittelpunktes.

CircleColumnCircleColumnCircleColumnCircleColumncircleColumn (input_control)  circle.center.x HTupleHTupleHtuple (real / integer) (double / int / long) (double / Hlong) (double / Hlong)

Spaltenkoordiante des Kreismittelpunktes.

CircleRadiusCircleRadiusCircleRadiusCircleRadiuscircleRadius (input_control)  circle.radius HTupleHTupleHtuple (real / integer) (double / int / long) (double / Hlong) (double / Hlong)

Radius des Kreises.

CircleStartPhiCircleStartPhiCircleStartPhiCircleStartPhicircleStartPhi (input_control)  angle.rad HTupleHTupleHtuple (real) (double) (double) (double)

Winkel des Startpunktes des Kreises oder Kreisbogens [rad].

Defaultwert: 0.0

CircleEndPhiCircleEndPhiCircleEndPhiCircleEndPhicircleEndPhi (input_control)  angle.rad HTupleHTupleHtuple (real) (double) (double) (double)

Winkel des Endpunktes des Kreises oder Kreisbogens [rad].

Defaultwert: 6.28318

CirclePointOrderCirclePointOrderCirclePointOrderCirclePointOrdercirclePointOrder (input_control)  string HTupleHTupleHtuple (string) (string) (HString) (char*)

Mathematischer Umlaufsinn des Kreises oder Kreisbogens.

Defaultwert: 'positive' "positive" "positive" "positive" "positive"

Werteliste: 'negative'"negative""negative""negative""negative", 'positive'"positive""positive""positive""positive"

RowRowRowRowrow (output_control)  point.y(-array) HTupleHTupleHtuple (real) (double) (double) (double)

Zeilenkoordinaten der Schnittpunkte.

ColumnColumnColumnColumncolumn (output_control)  point.x(-array) HTupleHTupleHtuple (real) (double) (double) (double)

Spaltenkoordinaten der Schnittpunkte.

Ergebnis

Sind die Parameterwerte korrekt, dann liefert intersection_segment_circleintersection_segment_circleIntersectionSegmentCircleIntersectionSegmentCircleIntersectionSegmentCircle den Wert 2 (H_MSG_TRUE).

Alternativen

intersection_circle_contour_xldintersection_circle_contour_xldIntersectionCircleContourXldIntersectionCircleContourXldIntersectionCircleContourXld

Siehe auch

intersection_line_circleintersection_line_circleIntersectionLineCircleIntersectionLineCircleIntersectionLineCircle

Modul

Foundation