1781 double dist_sqr, shortest_sqr;
1786 if (radius_A == radius_B)
1827 proj.
x = CENTER->
x + (B1->
x - CENTER->
x) * radius_A / radius_B;
1828 proj.
y = CENTER->
y + (B1->
y - CENTER->
y) * radius_A / radius_B;
1834 dl->
distance = fabs(radius_A - radius_B);
1838 proj.
x = CENTER->
x + (B3->
x - CENTER->
x) * radius_A / radius_B;
1839 proj.
y = CENTER->
y + (B3->
y - CENTER->
y) * radius_A / radius_B;
1844 dl->
distance = fabs(radius_A - radius_B);
1852 proj.
x = CENTER->
x + (A1->
x - CENTER->
x) * radius_B / radius_A;
1853 proj.
y = CENTER->
y + (A1->
y - CENTER->
y) * radius_B / radius_A;
1858 dl->
distance = fabs(radius_A - radius_B);
1863 proj.
x = CENTER->
x + (A3->
x - CENTER->
x) * radius_B / radius_A;
1864 proj.
y = CENTER->
y + (A3->
y - CENTER->
y) * radius_B / radius_A;
1869 dl->
distance = fabs(radius_A - radius_B);
1880 if (dist_sqr < shortest_sqr)
1882 shortest_sqr = dist_sqr;
1888 if (dist_sqr < shortest_sqr)
1890 shortest_sqr = dist_sqr;
1896 if (dist_sqr < shortest_sqr)
1898 shortest_sqr = dist_sqr;
#define LW_TRUE
Return types for functions with status returns.
int lw_segment_side(const POINT2D *p1, const POINT2D *p2, const POINT2D *q)
lw_segment_side()
static double distance2d_sqr_pt_pt(const POINT2D *p1, const POINT2D *p2)