Correctly detect external hole perimeters
This commit is contained in:
parent
ca549cd2fe
commit
1d94618c5e
1 changed files with 3 additions and 1 deletions
|
@ -353,7 +353,9 @@ sub make_perimeters {
|
|||
push @loops, $traverse->($polynode->{children}, $depth+1, $is_contour);
|
||||
|
||||
my $role = EXTR_ROLE_PERIMETER;
|
||||
if ($depth == 0) {
|
||||
if ($is_contour ? $depth == 0 : !@{ $polynode->{children} }) {
|
||||
# external perimeters are root level in case of contours
|
||||
# and items with no children in case of holes
|
||||
$role = EXTR_ROLE_EXTERNAL_PERIMETER;
|
||||
} elsif ($depth == 1 && $is_contour) {
|
||||
$role = EXTR_ROLE_CONTOUR_INTERNAL_PERIMETER;
|
||||
|
|
Loading…
Reference in a new issue