180{
182 double radius_A;
183 double side_Q, side_A2;
184 double d;
185
189
190
191 if ( radius_A < 0 )
192 return side_Q;
193
195
196
197 if ( d == radius_A && side_Q == side_A2 )
198 {
199 return 0;
200 }
201
202
203 if ( side_Q == 0 )
204 {
205 return -1 * side_A2;
206 }
207
208
209
210
211
212 if ( d < radius_A && side_Q == side_A2 )
213 {
214 side_Q *= -1;
215 }
216
217 return side_Q;
218}
double distance2d_pt_pt(const POINT2D *p1, const POINT2D *p2)
double lw_arc_center(const POINT2D *p1, const POINT2D *p2, const POINT2D *p3, POINT2D *result)
Determines the center of the circle defined by the three given points.
int lw_segment_side(const POINT2D *p1, const POINT2D *p2, const POINT2D *q)
lw_segment_side()