diff options
author | Enrico Turri <enricoturri@seznam.cz> | 2020-01-17 16:58:19 +0300 |
---|---|---|
committer | Enrico Turri <enricoturri@seznam.cz> | 2020-01-17 16:58:19 +0300 |
commit | b368f8ff24452ed1e4b3db804e8405ca2123ec63 (patch) | |
tree | 0bea4695bbbd6fa43b61002ab31318aed158138b /src/slic3r/GUI/GLCanvas3D.cpp | |
parent | 02aa6294494bc491e0a3294a6c301c24c2574297 (diff) | |
parent | acb825cf1e5aafa9bbe5ce50e2bf9fd1cd517fed (diff) |
Fixed conflicts after merge with master
Diffstat (limited to 'src/slic3r/GUI/GLCanvas3D.cpp')
-rw-r--r-- | src/slic3r/GUI/GLCanvas3D.cpp | 156 |
1 files changed, 4 insertions, 152 deletions
diff --git a/src/slic3r/GUI/GLCanvas3D.cpp b/src/slic3r/GUI/GLCanvas3D.cpp index 702f99857..7cceb1a5f 100644 --- a/src/slic3r/GUI/GLCanvas3D.cpp +++ b/src/slic3r/GUI/GLCanvas3D.cpp @@ -132,9 +132,7 @@ GLCanvas3D::LayersEditing::LayersEditing() , m_object_max_z(0.f) , m_slicing_parameters(nullptr) , m_layer_height_profile_modified(false) -#if ENABLE_ADAPTIVE_LAYER_HEIGHT_PROFILE , m_adaptive_quality(0.5f) -#endif // ENABLE_ADAPTIVE_LAYER_HEIGHT_PROFILE , state(Unknown) , band_width(2.0f) , strength(0.005f) @@ -155,9 +153,6 @@ GLCanvas3D::LayersEditing::~LayersEditing() } const float GLCanvas3D::LayersEditing::THICKNESS_BAR_WIDTH = 70.0f; -#if !ENABLE_ADAPTIVE_LAYER_HEIGHT_PROFILE -const float GLCanvas3D::LayersEditing::THICKNESS_RESET_BUTTON_HEIGHT = 22.0f; -#endif // !ENABLE_ADAPTIVE_LAYER_HEIGHT_PROFILE bool GLCanvas3D::LayersEditing::init(const std::string& vertex_shader_filename, const std::string& fragment_shader_filename) { @@ -224,7 +219,6 @@ void GLCanvas3D::LayersEditing::render_overlay(const GLCanvas3D& canvas) const if (!m_enabled) return; -#if ENABLE_ADAPTIVE_LAYER_HEIGHT_PROFILE static const ImVec4 ORANGE(1.0f, 0.49f, 0.22f, 1.0f); const Size& cnv_size = canvas.get_canvas_size(); @@ -319,13 +313,6 @@ void GLCanvas3D::LayersEditing::render_overlay(const GLCanvas3D& canvas) const imgui.end(); const Rect& bar_rect = get_bar_rect_viewport(canvas); -#else - const Rect& bar_rect = get_bar_rect_viewport(canvas); - const Rect& reset_rect = get_reset_rect_viewport(canvas); - - _render_tooltip_texture(canvas, bar_rect, reset_rect); - _render_reset_texture(reset_rect); -#endif // ENABLE_ADAPTIVE_LAYER_HEIGHT_PROFILE render_active_object_annotations(canvas, bar_rect); render_profile(bar_rect); } @@ -352,38 +339,15 @@ bool GLCanvas3D::LayersEditing::bar_rect_contains(const GLCanvas3D& canvas, floa return (rect.get_left() <= x) && (x <= rect.get_right()) && (rect.get_top() <= y) && (y <= rect.get_bottom()); } -#if !ENABLE_ADAPTIVE_LAYER_HEIGHT_PROFILE -bool GLCanvas3D::LayersEditing::reset_rect_contains(const GLCanvas3D& canvas, float x, float y) -{ - const Rect& rect = get_reset_rect_screen(canvas); - return (rect.get_left() <= x) && (x <= rect.get_right()) && (rect.get_top() <= y) && (y <= rect.get_bottom()); -} -#endif // !ENABLE_ADAPTIVE_LAYER_HEIGHT_PROFILE - Rect GLCanvas3D::LayersEditing::get_bar_rect_screen(const GLCanvas3D& canvas) { const Size& cnv_size = canvas.get_canvas_size(); float w = (float)cnv_size.get_width(); float h = (float)cnv_size.get_height(); -#if ENABLE_ADAPTIVE_LAYER_HEIGHT_PROFILE return Rect(w - thickness_bar_width(canvas), 0.0f, w, h); -#else - return Rect(w - thickness_bar_width(canvas), 0.0f, w, h - reset_button_height(canvas)); -#endif // ENABLE_ADAPTIVE_LAYER_HEIGHT_PROFILE } -#if !ENABLE_ADAPTIVE_LAYER_HEIGHT_PROFILE -Rect GLCanvas3D::LayersEditing::get_reset_rect_screen(const GLCanvas3D& canvas) -{ - const Size& cnv_size = canvas.get_canvas_size(); - float w = (float)cnv_size.get_width(); - float h = (float)cnv_size.get_height(); - - return Rect(w - thickness_bar_width(canvas), h - reset_button_height(canvas), w, h); -} -#endif // !ENABLE_ADAPTIVE_LAYER_HEIGHT_PROFILE - Rect GLCanvas3D::LayersEditing::get_bar_rect_viewport(const GLCanvas3D& canvas) { const Size& cnv_size = canvas.get_canvas_size(); @@ -392,26 +356,9 @@ Rect GLCanvas3D::LayersEditing::get_bar_rect_viewport(const GLCanvas3D& canvas) float inv_zoom = (float)canvas.get_camera().get_inv_zoom(); -#if ENABLE_ADAPTIVE_LAYER_HEIGHT_PROFILE return Rect((half_w - thickness_bar_width(canvas)) * inv_zoom, half_h * inv_zoom, half_w * inv_zoom, -half_h * inv_zoom); -#else - return Rect((half_w - thickness_bar_width(canvas)) * inv_zoom, half_h * inv_zoom, half_w * inv_zoom, (-half_h + reset_button_height(canvas)) * inv_zoom); -#endif // ENABLE_ADAPTIVE_LAYER_HEIGHT_PROFILE } -#if !ENABLE_ADAPTIVE_LAYER_HEIGHT_PROFILE -Rect GLCanvas3D::LayersEditing::get_reset_rect_viewport(const GLCanvas3D& canvas) -{ - const Size& cnv_size = canvas.get_canvas_size(); - float half_w = 0.5f * (float)cnv_size.get_width(); - float half_h = 0.5f * (float)cnv_size.get_height(); - - float inv_zoom = (float)canvas.get_camera().get_inv_zoom(); - - return Rect((half_w - thickness_bar_width(canvas)) * inv_zoom, (-half_h + reset_button_height(canvas)) * inv_zoom, half_w * inv_zoom, -half_h * inv_zoom); -} -#endif // !ENABLE_ADAPTIVE_LAYER_HEIGHT_PROFILE - bool GLCanvas3D::LayersEditing::is_initialized() const { return m_shader.is_initialized(); @@ -446,53 +393,6 @@ std::string GLCanvas3D::LayersEditing::get_tooltip(const GLCanvas3D& canvas) con return ret; } -#if !ENABLE_ADAPTIVE_LAYER_HEIGHT_PROFILE -void GLCanvas3D::LayersEditing::_render_tooltip_texture(const GLCanvas3D& canvas, const Rect& bar_rect, const Rect& reset_rect) const -{ - // TODO: do this with ImGui - - if (m_tooltip_texture.get_id() == 0) - { - std::string filename = resources_dir() + "/icons/variable_layer_height_tooltip.png"; - if (!m_tooltip_texture.load_from_file(filename, false, GLTexture::SingleThreaded, false)) - return; - } - -#if ENABLE_RETINA_GL - const float scale = canvas.get_canvas_size().get_scale_factor(); -#else - const float scale = canvas.get_wxglcanvas()->GetContentScaleFactor(); -#endif - const float width = (float)m_tooltip_texture.get_width() * scale; - const float height = (float)m_tooltip_texture.get_height() * scale; - - float inv_zoom = (float)canvas.get_camera().get_inv_zoom(); - float gap = 10.0f * inv_zoom; - - float bar_left = bar_rect.get_left(); - float reset_bottom = reset_rect.get_bottom(); - - float l = bar_left - width * inv_zoom - gap; - float r = bar_left - gap; - float t = reset_bottom + height * inv_zoom + gap; - float b = reset_bottom + gap; - - GLTexture::render_texture(m_tooltip_texture.get_id(), l, r, b, t); -} - -void GLCanvas3D::LayersEditing::_render_reset_texture(const Rect& reset_rect) const -{ - if (m_reset_texture.get_id() == 0) - { - std::string filename = resources_dir() + "/icons/variable_layer_height_reset.png"; - if (!m_reset_texture.load_from_file(filename, false, GLTexture::SingleThreaded, false)) - return; - } - - GLTexture::render_texture(m_reset_texture.get_id(), reset_rect.get_left(), reset_rect.get_right(), reset_rect.get_bottom(), reset_rect.get_top()); -} -#endif // !ENABLE_ADAPTIVE_LAYER_HEIGHT_PROFILE - void GLCanvas3D::LayersEditing::render_active_object_annotations(const GLCanvas3D& canvas, const Rect& bar_rect) const { m_shader.start_using(); @@ -641,7 +541,6 @@ void GLCanvas3D::LayersEditing::reset_layer_height_profile(GLCanvas3D& canvas) canvas.post_event(SimpleEvent(EVT_GLCANVAS_SCHEDULE_BACKGROUND_PROCESS)); } -#if ENABLE_ADAPTIVE_LAYER_HEIGHT_PROFILE void GLCanvas3D::LayersEditing::adaptive_layer_height_profile(GLCanvas3D& canvas, float quality_factor) { this->update_slicing_parameters(); @@ -659,7 +558,6 @@ void GLCanvas3D::LayersEditing::smooth_layer_height_profile(GLCanvas3D& canvas, m_layers_texture.valid = false; canvas.post_event(SimpleEvent(EVT_GLCANVAS_SCHEDULE_BACKGROUND_PROCESS)); } -#endif // ENABLE_ADAPTIVE_LAYER_HEIGHT_PROFILE void GLCanvas3D::LayersEditing::generate_layer_height_texture() { @@ -722,19 +620,6 @@ float GLCanvas3D::LayersEditing::thickness_bar_width(const GLCanvas3D &canvas) * THICKNESS_BAR_WIDTH; } -#if !ENABLE_ADAPTIVE_LAYER_HEIGHT_PROFILE -float GLCanvas3D::LayersEditing::reset_button_height(const GLCanvas3D &canvas) -{ - return -#if ENABLE_RETINA_GL - canvas.get_canvas_size().get_scale_factor() -#else - canvas.get_wxglcanvas()->GetContentScaleFactor() -#endif - * THICKNESS_RESET_BUTTON_HEIGHT; -} -#endif // !ENABLE_ADAPTIVE_LAYER_HEIGHT_PROFILE - const Point GLCanvas3D::Mouse::Drag::Invalid_2D_Point(INT_MAX, INT_MAX); const Vec3d GLCanvas3D::Mouse::Drag::Invalid_3D_Point(DBL_MAX, DBL_MAX, DBL_MAX); @@ -1344,9 +1229,6 @@ void GLCanvas3D::LegendTexture::render(const GLCanvas3D& canvas) const } } -#if !ENABLE_VIEW_TOOLBAR_BACKGROUND_FIX -wxDEFINE_EVENT(EVT_GLCANVAS_INIT, SimpleEvent); -#endif // !ENABLE_VIEW_TOOLBAR_BACKGROUND_FIX wxDEFINE_EVENT(EVT_GLCANVAS_SCHEDULE_BACKGROUND_PROCESS, SimpleEvent); wxDEFINE_EVENT(EVT_GLCANVAS_OBJECT_SELECT, SimpleEvent); wxDEFINE_EVENT(EVT_GLCANVAS_RIGHT_CLICK, RBtnEvent); @@ -1370,11 +1252,9 @@ wxDEFINE_EVENT(EVT_GLCANVAS_MOVE_DOUBLE_SLIDER, wxKeyEvent); wxDEFINE_EVENT(EVT_GLCANVAS_EDIT_COLOR_CHANGE, wxKeyEvent); wxDEFINE_EVENT(EVT_GLCANVAS_UNDO, SimpleEvent); wxDEFINE_EVENT(EVT_GLCANVAS_REDO, SimpleEvent); -#if ENABLE_ADAPTIVE_LAYER_HEIGHT_PROFILE wxDEFINE_EVENT(EVT_GLCANVAS_RESET_LAYER_HEIGHT_PROFILE, SimpleEvent); wxDEFINE_EVENT(EVT_GLCANVAS_ADAPTIVE_LAYER_HEIGHT_PROFILE, Event<float>); wxDEFINE_EVENT(EVT_GLCANVAS_SMOOTH_LAYER_HEIGHT_PROFILE, HeightProfileSmoothEvent); -#endif // ENABLE_ADAPTIVE_LAYER_HEIGHT_PROFILE #if ENABLE_THUMBNAIL_GENERATOR const double GLCanvas3D::DefaultCameraZoomToBoxMarginFactor = 1.25; @@ -1516,10 +1396,6 @@ bool GLCanvas3D::init() if (m_selection.is_enabled() && !m_selection.init()) return false; -#if !ENABLE_VIEW_TOOLBAR_BACKGROUND_FIX - post_event(SimpleEvent(EVT_GLCANVAS_INIT)); -#endif // !ENABLE_VIEW_TOOLBAR_BACKGROUND_FIX - m_initialized = true; return true; @@ -1676,7 +1552,6 @@ bool GLCanvas3D::is_layers_editing_allowed() const return m_layers_editing.is_allowed(); } -#if ENABLE_ADAPTIVE_LAYER_HEIGHT_PROFILE void GLCanvas3D::reset_layer_height_profile() { wxGetApp().plater()->take_snapshot(_(L("Variable layer height - Reset"))); @@ -1700,7 +1575,6 @@ void GLCanvas3D::smooth_layer_height_profile(const HeightProfileSmoothingParams& m_layers_editing.state = LayersEditing::Completed; m_dirty = true; } -#endif // ENABLE_ADAPTIVE_LAYER_HEIGHT_PROFILE bool GLCanvas3D::is_reload_delayed() const { @@ -1934,11 +1808,7 @@ void GLCanvas3D::render() m_camera.debug_render(); #endif // ENABLE_CAMERA_STATISTICS -#if ENABLE_3DCONNEXION_DEVICES_CLOSE_SETTING_DIALOG wxGetApp().plater()->get_mouse3d_controller().render_settings_dialog(*this); -#else - wxGetApp().plater()->get_mouse3d_controller().render_settings_dialog((unsigned int)cnv_size.get_width(), (unsigned int)cnv_size.get_height()); -#endif // ENABLE_3DCONNEXION_DEVICES_CLOSE_SETTING_DIALOG wxGetApp().imgui()->render(); @@ -3124,20 +2994,6 @@ void GLCanvas3D::on_mouse(wxMouseEvent& evt) m_layers_editing.state = LayersEditing::Editing; _perform_layer_editing_action(&evt); } -#if !ENABLE_ADAPTIVE_LAYER_HEIGHT_PROFILE - else if ((layer_editing_object_idx != -1) && m_layers_editing.reset_rect_contains(*this, pos(0), pos(1))) - { - if (evt.LeftDown()) - { - // A volume is selected and the mouse is inside the reset button. Reset the ModelObject's layer height profile. - m_layers_editing.reset_layer_height_profile(*this); - // Index 2 means no editing, just wait for mouse up event. - m_layers_editing.state = LayersEditing::Completed; - - m_dirty = true; - } - } -#endif // !ENABLE_ADAPTIVE_LAYER_HEIGHT_PROFILE else if (evt.LeftDown() && (evt.ShiftDown() || evt.AltDown()) && m_picking_enabled) { if (m_gizmos.get_current_type() != GLGizmosManager::SlaSupports) @@ -4262,10 +4118,8 @@ bool GLCanvas3D::_init_toolbars() if (!_init_undoredo_toolbar()) return false; -#if ENABLE_VIEW_TOOLBAR_BACKGROUND_FIX if (!_init_view_toolbar()) return false; -#endif // ENABLE_VIEW_TOOLBAR_BACKGROUND_FIX return true; } @@ -4524,12 +4378,10 @@ bool GLCanvas3D::_init_undoredo_toolbar() return true; } -#if ENABLE_VIEW_TOOLBAR_BACKGROUND_FIX bool GLCanvas3D::_init_view_toolbar() { return wxGetApp().plater()->init_view_toolbar(); } -#endif // ENABLE_VIEW_TOOLBAR_BACKGROUND_FIX bool GLCanvas3D::_set_current() { @@ -5439,11 +5291,11 @@ void GLCanvas3D::_load_print_object_toolpaths(const PrintObject& print_object, c const std::string& code = it->gcode; // pause print or custom Gcode if (code == PausePrintCode || - (code != ColorChangeCode && code != ExtruderChangeCode)) + (code != ColorChangeCode && code != ToolChangeCode)) return number_tools()-1; // last color item is a gray color for pause print or custom G-code // change tool (extruder) - if (code == ExtruderChangeCode) + if (code == ToolChangeCode) return get_color_idx_for_tool_change(it, extruder); // change color for current extruder if (code == ColorChangeCode) { @@ -5465,7 +5317,7 @@ void GLCanvas3D::_load_print_object_toolpaths(const PrintObject& print_object, c return color_idx; } // change tool (extruder) - if (it->gcode == ExtruderChangeCode) + if (it->gcode == ToolChangeCode) return get_color_idx_for_tool_change(it, extruder); } @@ -5509,7 +5361,7 @@ void GLCanvas3D::_load_print_object_toolpaths(const PrintObject& print_object, c bool is_tool_change = false; while (it_n != color_print_values->begin()) { --it_n; - if (it_n->gcode == ExtruderChangeCode) { + if (it_n->gcode == ToolChangeCode) { is_tool_change = true; if (it_n->extruder == it->extruder || (it_n->extruder == 0 && it->extruder == extruder)) return get_m600_color_idx(it); |