Find the 2d length of the given POINTARRAY, using circular arc interpolation between each coordinate triple.
Length(A1, A2, A3, A4, A5) = Length(A1, A2, A3)+Length(A3, A4, A5)
Definition at line 1948 of file ptarray.c.
1949{
1950 double dist = 0.0;
1951 uint32_t i;
1955
1957 lwerror(
"arc point array with even number of points");
1958
1960
1961 for ( i=2; i < pts->
npoints; i += 2 )
1962 {
1966 a1 = a3;
1967 }
1968 return dist;
1969}
double lw_arc_length(const POINT2D *A1, const POINT2D *A2, const POINT2D *A3)
Returns the length of a circular arc segment.
void void lwerror(const char *fmt,...) __attribute__((format(printf
Write a notice out to the error handler.
static const POINT2D * getPoint2d_cp(const POINTARRAY *pa, uint32_t n)
Returns a POINT2D pointer into the POINTARRAY serialized_ptlist, suitable for reading from.
References getPoint2d_cp(), lw_arc_length(), lwerror(), and POINTARRAY::npoints.
Referenced by lwcircstring_length_2d().