80
80
/* read all sites, sort, and compute xmin, xmax, ymin, ymax */
81
81
int readsites(void)
84
84
struct line_pnts *Points;
86
86
Points = Vect_new_line_struct();
108
108
G_debug(3, "Points->z[0]: %f", Points->z[0]);
109
109
sites[nsites].coord.z = Points->z[0];
112
sites[nsites].coord.z = 0.0;
112
114
sites[nsites].sitenbr = nsites;
113
115
sites[nsites].refcnt = 0;
115
if (nsites % 4000 == 0)
117
(struct Site *)G_realloc(sites,
118
(nsites + 4000) * sizeof(*sites));
118
if (xmin > sites[nsites].coord.x)
119
xmin = sites[nsites].coord.x;
120
if (xmax < sites[nsites].coord.x)
121
xmax = sites[nsites].coord.x;
122
if (ymin > sites[nsites].coord.y)
123
ymin = sites[nsites].coord.y;
124
if (ymax < sites[nsites].coord.y)
125
ymax = sites[nsites].coord.y;
128
xmin = xmax = sites[nsites].coord.x;
129
ymin = ymax = sites[nsites].coord.y;
121
qsort(sites, nsites, sizeof(*sites), scomp);
134
if (nsites < nlines - 1)
136
(struct Site *)G_realloc(sites,
137
(nsites) * sizeof(struct Site));
139
qsort(sites, nsites, sizeof(struct Site), scomp);
122
140
removeDuplicates();
123
xmin = sites[0].coord.x;
124
xmax = sites[0].coord.x;
125
for (i = 1; i < nsites; i += 1) {
126
if (sites[i].coord.x < xmin)
127
xmin = sites[i].coord.x;
128
if (sites[i].coord.x > xmax)
129
xmax = sites[i].coord.x;
131
ymin = sites[0].coord.y;
132
ymax = sites[nsites - 1].coord.y;