From 3835a1cacf6ea58a50739ff60e8ebb84c2f52a61 Mon Sep 17 00:00:00 2001 From: Enrico Turri Date: Wed, 26 Sep 2018 11:22:01 +0200 Subject: [PATCH] Fixed #1244 - perl part --- lib/Slic3r/GUI/Plater/ObjectPartsPanel.pm | 1 + xs/src/libslic3r/Model.cpp | 5 +++++ xs/src/libslic3r/Model.hpp | 1 + xs/xsp/Model.xsp | 2 ++ 4 files changed, 9 insertions(+) diff --git a/lib/Slic3r/GUI/Plater/ObjectPartsPanel.pm b/lib/Slic3r/GUI/Plater/ObjectPartsPanel.pm index 00373f138e..13c1b69450 100644 --- a/lib/Slic3r/GUI/Plater/ObjectPartsPanel.pm +++ b/lib/Slic3r/GUI/Plater/ObjectPartsPanel.pm @@ -424,6 +424,7 @@ sub on_btn_load { # apply the same translation we applied to the object if (($delta_x != 0.0) || ($delta_y != 0.0) || ($delta_z != 0.0)) { $new_volume->mesh->translate($delta_x, $delta_y, $delta_z); + $new_volume->convex_hull->translate($delta_x, $delta_y, $delta_z); } # set a default extruder value, since user can't add it manually diff --git a/xs/src/libslic3r/Model.cpp b/xs/src/libslic3r/Model.cpp index af764eb895..e0097ce2e1 100644 --- a/xs/src/libslic3r/Model.cpp +++ b/xs/src/libslic3r/Model.cpp @@ -973,6 +973,11 @@ const TriangleMesh& ModelVolume::get_convex_hull() const return m_convex_hull; } +TriangleMesh& ModelVolume::get_convex_hull() +{ + return m_convex_hull; +} + ModelVolume::Type ModelVolume::type_from_string(const std::string &s) { // Legacy support diff --git a/xs/src/libslic3r/Model.hpp b/xs/src/libslic3r/Model.hpp index 34a7c7cc13..353dc5cccc 100644 --- a/xs/src/libslic3r/Model.hpp +++ b/xs/src/libslic3r/Model.hpp @@ -195,6 +195,7 @@ public: void calculate_convex_hull(); const TriangleMesh& get_convex_hull() const; + TriangleMesh& get_convex_hull(); // Helpers for loading / storing into AMF / 3MF files. static Type type_from_string(const std::string &s); diff --git a/xs/xsp/Model.xsp b/xs/xsp/Model.xsp index 0f9b5cd159..0b59b3126b 100644 --- a/xs/xsp/Model.xsp +++ b/xs/xsp/Model.xsp @@ -338,6 +338,8 @@ ModelMaterial::attributes() %code%{ RETVAL = &THIS->config; %}; Ref mesh() %code%{ RETVAL = &THIS->mesh; %}; + Ref convex_hull() + %code%{ RETVAL = &THIS->get_convex_hull(); %}; bool modifier() %code%{ RETVAL = THIS->is_modifier(); %};