浏览代码

v.voronoi: fix skeleton extraction

git-svn-id: https://svn.osgeo.org/grass/grass/trunk@57996 15284696-431f-4ddb-bdfa-cd5b030d7da7
Markus Metz 11 年之前
父节点
当前提交
1f91df77b5
共有 2 个文件被更改,包括 7 次插入9 次删除
  1. 4 3
      vector/v.voronoi/main.c
  2. 3 6
      vector/v.voronoi/skeleton.c

+ 4 - 3
vector/v.voronoi/main.c

@@ -324,11 +324,12 @@ int main(int argc, char **argv)
 	if (!(type & GV_POINTS))
 	    continue;
 
-	if (!Vect_point_in_box(Points->x[0], Points->y[0], 0.0, &Box))
-	    continue;
-
 	if (!skeleton)
+	    if (!Vect_point_in_box(Points->x[0], Points->y[0], 0.0, &Box))
+		continue;
+
 	    Vect_write_line(&Out, ctype, Points, Cats);
+	}
 
 	for (i = 0; i < Cats->n_cats; i++) {
 	    int f, j;

+ 3 - 6
vector/v.voronoi/skeleton.c

@@ -492,9 +492,6 @@ int tie_up(void)
 	IPoints[i] = Vect_new_line_struct();
     Cats = Vect_new_cats_struct();
 
-    IPoints = NULL;
-
-
     for (node = 1; node <= Vect_get_num_nodes(&Out); node++) {
 	if (!Vect_node_alive(&Out, node))
 	    continue;
@@ -523,9 +520,9 @@ int tie_up(void)
 		IPoints[i] = Vect_new_line_struct();
 	    isl_allocated = n_isles;
 	}
-	for (isle = 0; isle < n_isles; isle++) {
-	    Vect_get_isle_points(&In, Vect_get_area_isle(&In, area, isle),
-	                         IPoints[isle]);
+	for (i = 0; i < n_isles; i++) {
+	    Vect_get_isle_points(&In, Vect_get_area_isle(&In, area, i),
+	                         IPoints[i]);
 	}
 
 	distmin = 1. / 0.; /* +inf */