GEOintersectLineArc

Top  Previous  Next

Schnittpunktberechnung von Linie mit Kreisbogen.

Mit dieser Routine werden die Schnittpunkte zwischen Linie und Kreisbogen ermittelt. Der Kreisbogen verläuft gegen den Uhrzeigersinn vom Start- zum Endwinkel. Sind der Startwinkel und der Endwinkel gleich, handelt es sich um einen Vollkreis. Nicht benötigte Ergebnisparameter dürfen NULL-Zeiger haben.

Parameter

x1 (const double)                                        [IN]

y1 (const double)                                        [IN]

Startpunkt der Linie.

x2 (const double)                                        [IN]

y2 (const double)                                        [IN]

Endpunkt der Linie.

cx (const double)                                        [IN]

cy (const double)                                        [IN]

Mittelpunkt des Kreisbogens.

r (const double)                                           [IN]

Radius des Kreisbogens.

alpha (const double)                                   [IN]

Startwinkel des Kreisbogens gegen den Uhrzeigersinn zum Endwinkel.

beta (const double)                                     [IN]

Endwinkel des Kreisbogens.

output_xs1 (double *)                        [IN/OUT]

output_ys1 (double *)                        [IN/OUT]

Erster Schnittpunkt, darf auch NULL-Zeiger enthalten.

output_xs2 (double *)                        [IN/OUT]

output_ys2 (double *)                        [IN/OUT]

Zweiter Schnittpunkt, darf auch NULL-Zeiger enthalten.

output_s1 (double *)                          [IN/OUT]

output_s2 (double *)                          [IN/OUT]

Faktoren von (Endpunkt-Startpunkt) zum Erreichen der Schnittpunkte.

Ergebnis

(int)                                                           [OUT]

Anzahl der Schnittpunkte (0, 1 oder 2). Bei einem Schnittpunkt befinden sich die Ergebnisse in den jeweils ersten Ergebnisparametern.

Deklaration

#include "basic.h"

 

int DLLENTRY GEOintersectLineArc (

     const double      x1,

     const double      y1,

     const double      x2,

     const double      y2,

     const double      cx,

     const double      cy,

     const double      r,

     const double      alpha,

     const double      beta,

     double *       output_xs1,

     double *       output_ys1,

     double *       output_xs2,

     double *       output_ys2,

     double *       output_s1,

     double *       output_s2

);

Verwandte Funktionen

GEOintersectArcArc

GEOintersectCircleArc

GEOintersectCircleCircle

GEOintersectCircleLine

GEOintersectLineLine

GEOintersectLineLine2

GEOintersectLineSpline

GEOintersectStraightArc

GEOintersectStraightCircle

GEOintersectStraightLine

GEOintersectStraightStraight

GEOintersectStraightVector

GEOintersectVectorVector