GRASS GIS 7 Programmer's Manual  7.0.3(2016)-r00000
area_poly2.c
Go to the documentation of this file.
1 
14 #include <grass/gis.h>
15 
25 double G_planimetric_polygon_area(const double *x, const double *y, int n)
26 {
27  double x1, y1, x2, y2;
28  double area;
29 
30  x2 = x[n - 1];
31  y2 = y[n - 1];
32 
33  area = 0;
34  while (--n >= 0) {
35  x1 = x2;
36  y1 = y2;
37 
38  x2 = *x++;
39  y2 = *y++;
40 
41  area += (y2 + y1) * (x2 - x1);
42  }
43 
44  if ((area /= 2.0) < 0.0)
45  area = -area;
46 
47  return area;
48 }
double G_planimetric_polygon_area(const double *x, const double *y, int n)
Calculates planimetric polygon area.
Definition: area_poly2.c:25