21 double units_to_meters_squared;
27 double (*darea0) (double);
52 switch (st->projection = st->window.proj) {
64 st->north = st->window.north;
65 st->north_value = st->darea0(st->north);
68 st->square_meters = st->window.ns_res * st->window.ew_res;
71 st->square_meters *= (factor * factor);
72 return (factor > 0.0);
93 return st->square_meters;
95 if (row != st->next_row) {
96 st->north = st->window.north - row * st->window.ns_res;
97 st->north_value = st->darea0(st->north);
100 st->north -= st->window.ns_res;
101 south_value = st->darea0(st->north);
102 cell_area = st->north_value - south_value;
104 st->next_row = row + 1;
105 st->north_value = south_value;
132 st->units_to_meters_squared = factor * factor;
135 st->units_to_meters_squared = 1.0;
double G_area_of_polygon(const double *x, const double *y, int n)
Area in square meters of polygon.
2D/3D raster map header (used also for region)
int G_projection(void)
Query cartographic projection.
double G_area_of_cell_at_row(int row)
Cell area in specified row.
double G_ellipsoid_polygon_area(const double *, const double *, int)
Area of lat-long polygon.
void G_begin_zone_area_on_sphere(double, double)
Initialize calculations for sphere.
double north
Extent coordinates (north)
double G_planimetric_polygon_area(const double *, const double *, int)
Calculates planimetric polygon area.
double G_darea0_on_sphere(double)
Calculates integral for area between two latitudes.
int G_begin_polygon_area_calculations(void)
Begin polygon area calculations.
int G_begin_cell_area_calculations(void)
Begin cell area calculations.
void G_begin_ellipsoid_polygon_area(double, double)
Begin area calculations.
#define PROJECTION_LL
Projection code - Latitude-Longitude.
void G_get_set_window(struct Cell_head *)
Get the current working window (region)
int G_get_ellipsoid_parameters(double *, double *)
get ellipsoid parameters
void G_begin_zone_area_on_ellipsoid(double, double, double)
Begin area calculations for ellipsoid.
double G_database_units_to_meters_factor(void)
Conversion to meters.
double G_darea0_on_ellipsoid(double)
Calculate integral for area between two latitudes.