Merge branch 'et_world_coordinates' into fs_emboss

# Conflicts:
#	src/libslic3r/Technologies.hpp
This commit is contained in:
Filip Sykala 2022-03-24 11:47:59 +01:00
commit 4e4ba09cbf
6 changed files with 78 additions and 14 deletions

View file

@ -1712,9 +1712,11 @@ void Selection::render_sidebar_hints(const std::string& sidebar_field)
#if ENABLE_WORLD_COORDINATE_SHOW_AXES
if (!boost::starts_with(sidebar_field, "layer")) {
shader->set_uniform("emission_factor", 0.1f);
#if !ENABLE_GL_SHADERS_ATTRIBUTES
glsafe(::glPushMatrix());
glsafe(::glTranslated(center.x(), center.y(), center.z()));
glsafe(::glMultMatrixd(orient_matrix.data()));
#endif // !ENABLE_GL_SHADERS_ATTRIBUTES
}
#endif // ENABLE_WORLD_COORDINATE_SHOW_AXES
@ -1727,6 +1729,13 @@ void Selection::render_sidebar_hints(const std::string& sidebar_field)
render_sidebar_scale_hints(sidebar_field, *shader, base_matrix * orient_matrix);
else if (boost::starts_with(sidebar_field, "layer"))
render_sidebar_layers_hints(sidebar_field, *shader);
#if ENABLE_WORLD_COORDINATE_SHOW_AXES
if (!boost::starts_with(sidebar_field, "layer")) {
if (!wxGetApp().obj_manipul()->is_world_coordinates())
m_axes.render(Geometry::assemble_transform(axes_center) * orient_matrix, 0.25f);
}
#endif // ENABLE_WORLD_COORDINATE_SHOW_AXES
#else
if (boost::starts_with(sidebar_field, "position"))
render_sidebar_position_hints(sidebar_field);
@ -1750,9 +1759,11 @@ void Selection::render_sidebar_hints(const std::string& sidebar_field)
#endif // ENABLE_WORLD_COORDINATE_SHOW_AXES
#endif // ENABLE_GL_SHADERS_ATTRIBUTES
#if ENABLE_GL_SHADERS_ATTRIBUTES || ENABLE_WORLD_COORDINATE_SHOW_AXES
#if ENABLE_WORLD_COORDINATE_SHOW_AXES
#if !ENABLE_GL_SHADERS_ATTRIBUTES
glsafe(::glPopMatrix());
#endif // ENABLE_GL_SHADERS_ATTRIBUTES || ENABLE_WORLD_COORDINATE_SHOW_AXES
#endif // !ENABLE_GL_SHADERS_ATTRIBUTES
#endif // ENABLE_WORLD_COORDINATE_SHOW_AXES
#if !ENABLE_LEGACY_OPENGL_REMOVAL
if (!boost::starts_with(sidebar_field, "layer"))
@ -2342,14 +2353,20 @@ void Selection::render_bounding_box(const BoundingBoxf3 & box, float* color) con
return;
#if ENABLE_COORDINATE_DEPENDENT_SELECTION_BOX
#if !ENABLE_GL_SHADERS_ATTRIBUTES
glsafe(::glPushMatrix());
glsafe(::glMultMatrixd(trafo.data()));
#endif // !ENABLE_GL_SHADERS_ATTRIBUTES
#endif // ENABLE_COORDINATE_DEPENDENT_SELECTION_BOX
shader->start_using();
#if ENABLE_GL_SHADERS_ATTRIBUTES
const Camera& camera = wxGetApp().plater()->get_camera();
#if ENABLE_COORDINATE_DEPENDENT_SELECTION_BOX
shader->set_uniform("view_model_matrix", camera.get_view_matrix() * trafo);
#else
shader->set_uniform("view_model_matrix", camera.get_view_matrix());
#endif // ENABLE_COORDINATE_DEPENDENT_SELECTION_BOX
shader->set_uniform("projection_matrix", camera.get_projection_matrix());
#endif // ENABLE_GL_SHADERS_ATTRIBUTES
m_box.set_color(to_rgba(color));
@ -2357,7 +2374,9 @@ void Selection::render_bounding_box(const BoundingBoxf3 & box, float* color) con
shader->stop_using();
#if ENABLE_COORDINATE_DEPENDENT_SELECTION_BOX
#if !ENABLE_GL_SHADERS_ATTRIBUTES
glsafe(::glPopMatrix());
#endif // !ENABLE_GL_SHADERS_ATTRIBUTES
#endif // ENABLE_COORDINATE_DEPENDENT_SELECTION_BOX
#else
::glBegin(GL_LINES);