|
|
|
|
@ -1227,7 +1227,8 @@ int osm_area_split_add (struct s_osmmarea *marea) {
|
|
|
|
|
else if (i == 0) pt[i].angle = point_angle (pt[pt_c-1].km, pt[i].km, pt[i+1].km);
|
|
|
|
|
else pt[i].angle = point_angle (pt[i-1].km, pt[i].km, pt[i+1].km);
|
|
|
|
|
if (pt[i].angle > M_PI) { /* only select first pt */
|
|
|
|
|
if (st == -1 ||st+1 == i) st = i;
|
|
|
|
|
if (st == -1) st = i;
|
|
|
|
|
else if (pt[st].angle < pt[i].angle) st = i;
|
|
|
|
|
c++;
|
|
|
|
|
}
|
|
|
|
|
angle_sum += pt[i].angle;
|
|
|
|
|
@ -1340,7 +1341,7 @@ int osm_area_split_add (struct s_osmmarea *marea) {
|
|
|
|
|
sel++; if (sel >= pt_c) sel = 0;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
} while (sel > st && a->p_cnt < 3);
|
|
|
|
|
} while (sel != st && a->p_cnt < 3);
|
|
|
|
|
|
|
|
|
|
/* add element */
|
|
|
|
|
if (a->p_cnt >= 3) {
|
|
|
|
|
|