GEOintersectLineArc

Top  Previous  Next

Intersection calculation of line with arc.

With this routine the intersections are determined between line and arc. The arc runs against the clockwise of the start to the final corner. If the start corner and the final corner are same, it concerns a full circle. Not required result parametres may have zero pointer.

Parametre

x1 (const stands in) [IN]

y1 (const stands in) [IN]

Starting point of the line.

x2 (const stands in) [IN]

y2 (const stands in) [IN]

Terminator point of the line.

cx (const stands in) [IN]

cy (const stands in) [IN]

Centre of the arc.

r (const stands in) [IN]

Radius of the arc.

alpha (const stands in) [IN]

Start corner of the arc against the clockwise to the final corner.

beta (const stands in) [IN]

Final corner of the arc.

output_xs1 (stands in *) [IN / OUT]

output_ys1 (stands in *) [IN / OUT]

The first intersection, may also contain zero pointer.

output_xs2 (stands in *) [IN / OUT]

output_ys2 (stands in *) [IN / OUT]

The second intersection, may also contain zero pointer.

output_s1 (stands in *) [IN / OUT]

output_s2 (stands in *) [IN / OUT]

Factors of (terminator point starting point) to the achievement of the intersections.

Result

(int) [OUT]

Number of the intersections (0, 1 or 2). With an intersection the results are the in each case first result parametres.

Declaration

#include "basic.h"

 

int DLLENTRY GEOintersectLineArc (

const stands in x1,

const stands in y1,

const stands in x2,

const stands in y2,

const stands in cx,

const stands in cy,

const stands in r,

const stands in alpha,

const stands in beta,

stand in * output_xs1,

stand in * output_ys1,

stand in * output_xs2,

stand in * output_ys2,

stand in * output_s1,

stand in * output_s2

);

Related functions

GEOintersectArcArc

GEOintersectCircleArc

GEOintersectCircleCircle

GEOintersectCircleLine

GEOintersectLineLine

GEOintersectLineLine2

GEOintersectLineSpline

GEOintersectStraightArc

GEOintersectStraightCircle

GEOintersectStraightLine

GEOintersectStraightStraight

GEOintersectStraightVector

GEOintersectVectorVector