From ea1d138c9500f00d4387ee8eb8eb1fa047e8f721 Mon Sep 17 00:00:00 2001 From: Alessandro Ranellucci Date: Thu, 29 Aug 2013 01:40:42 +0200 Subject: [PATCH] Ported ExtrusionLoop->make_counter_clockwise() --- lib/Slic3r/ExtrusionLoop.pm | 9 --------- xs/src/ExtrusionEntity.cpp | 6 ++++++ xs/src/ExtrusionEntity.hpp | 1 + xs/xsp/ExtrusionLoop.xsp | 1 + 4 files changed, 8 insertions(+), 9 deletions(-) diff --git a/lib/Slic3r/ExtrusionLoop.pm b/lib/Slic3r/ExtrusionLoop.pm index 2cf90c8d54..57f380eece 100644 --- a/lib/Slic3r/ExtrusionLoop.pm +++ b/lib/Slic3r/ExtrusionLoop.pm @@ -13,13 +13,4 @@ sub split_at { ); } -sub make_counter_clockwise { - my $self = shift; - if (!$self->polygon->is_counter_clockwise) { - $self->reverse; - return 1; - } - return 0; -} - 1; diff --git a/xs/src/ExtrusionEntity.cpp b/xs/src/ExtrusionEntity.cpp index fe857d2536..9c0012f541 100644 --- a/xs/src/ExtrusionEntity.cpp +++ b/xs/src/ExtrusionEntity.cpp @@ -41,4 +41,10 @@ ExtrusionLoop::split_at_first_point() return this->split_at_index(0); } +bool +ExtrusionLoop::make_counter_clockwise() +{ + return this->polygon.make_counter_clockwise(); +} + } diff --git a/xs/src/ExtrusionEntity.hpp b/xs/src/ExtrusionEntity.hpp index 2302ad52b6..0f8f1cb2aa 100644 --- a/xs/src/ExtrusionEntity.hpp +++ b/xs/src/ExtrusionEntity.hpp @@ -48,6 +48,7 @@ class ExtrusionLoop : public ExtrusionEntity Polygon polygon; ExtrusionPath* split_at_index(int index); ExtrusionPath* split_at_first_point(); + bool make_counter_clockwise(); }; } diff --git a/xs/xsp/ExtrusionLoop.xsp b/xs/xsp/ExtrusionLoop.xsp index 9bcd196a38..ecc117ef17 100644 --- a/xs/xsp/ExtrusionLoop.xsp +++ b/xs/xsp/ExtrusionLoop.xsp @@ -17,6 +17,7 @@ %code{% const char* CLASS = "Slic3r::ExtrusionPath"; RETVAL = THIS->split_at_index(index); %}; ExtrusionPath* split_at_first_point() %code{% const char* CLASS = "Slic3r::ExtrusionPath"; RETVAL = THIS->split_at_first_point(); %}; + bool make_counter_clockwise(); %{ ExtrusionLoop*