Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer into et_custom_bed
This commit is contained in:
commit
ce5618fb27
@ -1795,7 +1795,7 @@ std::vector<int> GLCanvas3D::load_object(const Model& model, int obj_idx)
|
|||||||
void GLCanvas3D::mirror_selection(Axis axis)
|
void GLCanvas3D::mirror_selection(Axis axis)
|
||||||
{
|
{
|
||||||
m_selection.mirror(axis);
|
m_selection.mirror(axis);
|
||||||
do_mirror("Mirror Object");
|
do_mirror(L("Mirror Object"));
|
||||||
wxGetApp().obj_manipul()->set_dirty();
|
wxGetApp().obj_manipul()->set_dirty();
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -2950,7 +2950,7 @@ void GLCanvas3D::on_mouse(wxMouseEvent& evt)
|
|||||||
else if ((m_mouse.drag.move_volume_idx != -1) && m_mouse.dragging)
|
else if ((m_mouse.drag.move_volume_idx != -1) && m_mouse.dragging)
|
||||||
{
|
{
|
||||||
m_regenerate_volumes = false;
|
m_regenerate_volumes = false;
|
||||||
do_move("Move Object");
|
do_move(L("Move Object"));
|
||||||
wxGetApp().obj_manipul()->set_dirty();
|
wxGetApp().obj_manipul()->set_dirty();
|
||||||
// Let the plater know that the dragging finished, so a delayed refresh
|
// Let the plater know that the dragging finished, so a delayed refresh
|
||||||
// of the scene with the background processing data should be performed.
|
// of the scene with the background processing data should be performed.
|
||||||
@ -3115,7 +3115,7 @@ void GLCanvas3D::do_move(const std::string& snapshot_type)
|
|||||||
return;
|
return;
|
||||||
|
|
||||||
if (!snapshot_type.empty())
|
if (!snapshot_type.empty())
|
||||||
wxGetApp().plater()->take_snapshot(_(L(snapshot_type)));
|
wxGetApp().plater()->take_snapshot(_(snapshot_type));
|
||||||
|
|
||||||
std::set<std::pair<int, int>> done; // keeps track of modified instances
|
std::set<std::pair<int, int>> done; // keeps track of modified instances
|
||||||
bool object_moved = false;
|
bool object_moved = false;
|
||||||
@ -3177,7 +3177,7 @@ void GLCanvas3D::do_rotate(const std::string& snapshot_type)
|
|||||||
return;
|
return;
|
||||||
|
|
||||||
if (!snapshot_type.empty())
|
if (!snapshot_type.empty())
|
||||||
wxGetApp().plater()->take_snapshot(_(L(snapshot_type)));
|
wxGetApp().plater()->take_snapshot(_(snapshot_type));
|
||||||
|
|
||||||
std::set<std::pair<int, int>> done; // keeps track of modified instances
|
std::set<std::pair<int, int>> done; // keeps track of modified instances
|
||||||
|
|
||||||
@ -3237,7 +3237,7 @@ void GLCanvas3D::do_scale(const std::string& snapshot_type)
|
|||||||
return;
|
return;
|
||||||
|
|
||||||
if (!snapshot_type.empty())
|
if (!snapshot_type.empty())
|
||||||
wxGetApp().plater()->take_snapshot(_(L(snapshot_type)));
|
wxGetApp().plater()->take_snapshot(_(snapshot_type));
|
||||||
|
|
||||||
std::set<std::pair<int, int>> done; // keeps track of modified instances
|
std::set<std::pair<int, int>> done; // keeps track of modified instances
|
||||||
|
|
||||||
@ -3291,10 +3291,10 @@ void GLCanvas3D::do_scale(const std::string& snapshot_type)
|
|||||||
void GLCanvas3D::do_flatten(const Vec3d& normal, const std::string& snapshot_type)
|
void GLCanvas3D::do_flatten(const Vec3d& normal, const std::string& snapshot_type)
|
||||||
{
|
{
|
||||||
if (!snapshot_type.empty())
|
if (!snapshot_type.empty())
|
||||||
wxGetApp().plater()->take_snapshot(_(L(snapshot_type)));
|
wxGetApp().plater()->take_snapshot(_(snapshot_type));
|
||||||
|
|
||||||
m_selection.flattening_rotate(normal);
|
m_selection.flattening_rotate(normal);
|
||||||
do_rotate(""); // avoid taking another snapshot
|
do_rotate(L("")); // avoid taking another snapshot
|
||||||
}
|
}
|
||||||
|
|
||||||
void GLCanvas3D::do_mirror(const std::string& snapshot_type)
|
void GLCanvas3D::do_mirror(const std::string& snapshot_type)
|
||||||
@ -3303,7 +3303,7 @@ void GLCanvas3D::do_mirror(const std::string& snapshot_type)
|
|||||||
return;
|
return;
|
||||||
|
|
||||||
if (!snapshot_type.empty())
|
if (!snapshot_type.empty())
|
||||||
wxGetApp().plater()->take_snapshot(_(L(snapshot_type)));
|
wxGetApp().plater()->take_snapshot(_(snapshot_type));
|
||||||
|
|
||||||
std::set<std::pair<int, int>> done; // keeps track of modified instances
|
std::set<std::pair<int, int>> done; // keeps track of modified instances
|
||||||
|
|
||||||
|
@ -242,7 +242,7 @@ ObjectManipulation::ObjectManipulation(wxWindow* parent) :
|
|||||||
selection.synchronize_unselected_instances(Selection::SYNC_ROTATION_GENERAL);
|
selection.synchronize_unselected_instances(Selection::SYNC_ROTATION_GENERAL);
|
||||||
selection.synchronize_unselected_volumes();
|
selection.synchronize_unselected_volumes();
|
||||||
// Copy mirroring values from GLVolumes into Model (ModelInstance / ModelVolume), trigger background processing.
|
// Copy mirroring values from GLVolumes into Model (ModelInstance / ModelVolume), trigger background processing.
|
||||||
canvas->do_mirror("Set Mirror");
|
canvas->do_mirror(L("Set Mirror"));
|
||||||
UpdateAndShow(true);
|
UpdateAndShow(true);
|
||||||
});
|
});
|
||||||
return sizer;
|
return sizer;
|
||||||
@ -323,7 +323,7 @@ ObjectManipulation::ObjectManipulation(wxWindow* parent) :
|
|||||||
selection.synchronize_unselected_instances(Selection::SYNC_ROTATION_GENERAL);
|
selection.synchronize_unselected_instances(Selection::SYNC_ROTATION_GENERAL);
|
||||||
selection.synchronize_unselected_volumes();
|
selection.synchronize_unselected_volumes();
|
||||||
// Copy rotation values from GLVolumes into Model (ModelInstance / ModelVolume), trigger background processing.
|
// Copy rotation values from GLVolumes into Model (ModelInstance / ModelVolume), trigger background processing.
|
||||||
canvas->do_rotate("Set Rotation");
|
canvas->do_rotate(L("Set Rotation"));
|
||||||
|
|
||||||
UpdateAndShow(true);
|
UpdateAndShow(true);
|
||||||
});
|
});
|
||||||
@ -709,7 +709,7 @@ void ObjectManipulation::change_position_value(int axis, double value)
|
|||||||
Selection& selection = canvas->get_selection();
|
Selection& selection = canvas->get_selection();
|
||||||
selection.start_dragging();
|
selection.start_dragging();
|
||||||
selection.translate(position - m_cache.position, selection.requires_local_axes());
|
selection.translate(position - m_cache.position, selection.requires_local_axes());
|
||||||
canvas->do_move("Set Position");
|
canvas->do_move(L("Set Position"));
|
||||||
|
|
||||||
m_cache.position = position;
|
m_cache.position = position;
|
||||||
m_cache.position_rounded(axis) = DBL_MAX;
|
m_cache.position_rounded(axis) = DBL_MAX;
|
||||||
@ -740,7 +740,7 @@ void ObjectManipulation::change_rotation_value(int axis, double value)
|
|||||||
selection.rotate(
|
selection.rotate(
|
||||||
(M_PI / 180.0) * (transformation_type.absolute() ? rotation : rotation - m_cache.rotation),
|
(M_PI / 180.0) * (transformation_type.absolute() ? rotation : rotation - m_cache.rotation),
|
||||||
transformation_type);
|
transformation_type);
|
||||||
canvas->do_rotate("Set Orientation");
|
canvas->do_rotate(L("Set Orientation"));
|
||||||
|
|
||||||
m_cache.rotation = rotation;
|
m_cache.rotation = rotation;
|
||||||
m_cache.rotation_rounded(axis) = DBL_MAX;
|
m_cache.rotation_rounded(axis) = DBL_MAX;
|
||||||
@ -805,7 +805,7 @@ void ObjectManipulation::do_scale(int axis, const Vec3d &scale) const
|
|||||||
|
|
||||||
selection.start_dragging();
|
selection.start_dragging();
|
||||||
selection.scale(scaling_factor * 0.01, transformation_type);
|
selection.scale(scaling_factor * 0.01, transformation_type);
|
||||||
wxGetApp().plater()->canvas3D()->do_scale("Set Scale");
|
wxGetApp().plater()->canvas3D()->do_scale(L("Set Scale"));
|
||||||
}
|
}
|
||||||
|
|
||||||
void ObjectManipulation::on_change(t_config_option_key opt_key, const boost::any& value)
|
void ObjectManipulation::on_change(t_config_option_key opt_key, const boost::any& value)
|
||||||
|
@ -551,7 +551,7 @@ bool GLGizmosManager::on_mouse(wxMouseEvent& evt)
|
|||||||
if (m_current == Flatten)
|
if (m_current == Flatten)
|
||||||
{
|
{
|
||||||
// Rotate the object so the normal points downward:
|
// Rotate the object so the normal points downward:
|
||||||
m_parent.do_flatten(get_flattening_normal(), "Gizmo-Place on Face");
|
m_parent.do_flatten(get_flattening_normal(), L("Gizmo-Place on Face"));
|
||||||
wxGetApp().obj_manipul()->set_dirty();
|
wxGetApp().obj_manipul()->set_dirty();
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -624,17 +624,17 @@ bool GLGizmosManager::on_mouse(wxMouseEvent& evt)
|
|||||||
case Move:
|
case Move:
|
||||||
{
|
{
|
||||||
m_parent.disable_regenerate_volumes();
|
m_parent.disable_regenerate_volumes();
|
||||||
m_parent.do_move("Gizmo-Move");
|
m_parent.do_move(L("Gizmo-Move"));
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case Scale:
|
case Scale:
|
||||||
{
|
{
|
||||||
m_parent.do_scale("Gizmo-Scale");
|
m_parent.do_scale(L("Gizmo-Scale"));
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case Rotate:
|
case Rotate:
|
||||||
{
|
{
|
||||||
m_parent.do_rotate("Gizmo-Rotate");
|
m_parent.do_rotate(L("Gizmo-Rotate"));
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
default:
|
default:
|
||||||
|
@ -816,12 +816,12 @@ void Selection::scale_to_fit_print_volume(const DynamicPrintConfig& config)
|
|||||||
// apply scale
|
// apply scale
|
||||||
start_dragging();
|
start_dragging();
|
||||||
scale(s * Vec3d::Ones(), type);
|
scale(s * Vec3d::Ones(), type);
|
||||||
wxGetApp().plater()->canvas3D()->do_scale(""); // avoid storing another snapshot
|
wxGetApp().plater()->canvas3D()->do_scale(L("")); // avoid storing another snapshot
|
||||||
|
|
||||||
// center selection on print bed
|
// center selection on print bed
|
||||||
start_dragging();
|
start_dragging();
|
||||||
translate(print_volume.center() - get_bounding_box().center());
|
translate(print_volume.center() - get_bounding_box().center());
|
||||||
wxGetApp().plater()->canvas3D()->do_move(""); // avoid storing another snapshot
|
wxGetApp().plater()->canvas3D()->do_move(L("")); // avoid storing another snapshot
|
||||||
|
|
||||||
wxGetApp().obj_manipul()->set_dirty();
|
wxGetApp().obj_manipul()->set_dirty();
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user