22#include <grass/dataquad.h>
78 for (i = 0; i <= kmax; i++) {
94 double ew_res, ns_res;
102 if (data->
n_rows % 2 == 0) {
109 if (data->
n_cols % 2 == 0) {
144 for (
int i = 0; i < data->
n_points; i++) {
145 double xx = data->
points[i].x - point->
x;
146 double yy = data->
points[i].y - point->
y;
174 double xmin, xmax, ymin, ymax;
181 if (((data->
x_orig >= xmin) && (data->
x_orig <= xmax) &&
228 double ew_res, ns_res;
235 "Points are too concentrated -- please increase DMIN\n");
239 if (data->
n_cols % 2 == 0) {
247 if (data->
n_rows % 2 == 0) {
273 for (i = 0; i < data->
n_points; i++) {
313 for (i = 0; i < data->
n_points; i++) {
317 if ((point->
x > xmin) && (point->
x < xmax) && (point->
y > ymin) &&
int quad_add_data(struct triple *point, struct quaddata *data, double dmin)
int quad_division_check(struct quaddata *data, int kmax)
int quad_get_points(struct quaddata *data_inter, struct quaddata *data, int MAX)
int quad_intersect(struct quaddata *data_inter, struct quaddata *data)
int quad_compare(struct triple *point, struct quaddata *data)
struct triple * quad_point_new(double x, double y, double z, double sm)
struct quaddata * quad_data_new(double x_or, double y_or, double xmax, double ymax, int rows, int cols, int n_points, int kmax)
struct quaddata ** quad_divide_data(struct quaddata *data, int kmax, double dmin)