Reworked handling of approximate / snug bounding boxes
at Model / ModelObject / PrintObject
Further optimized, so that the bounding boxes are not recalculated
unnecesarilly.
at Model / ModelObject / PrintObject
Fixes#9467#9519#9646
Also fixed variable layer height editing for case such as mentioned
in the github issues above.
Also likely fixed some of the sinking objects issues.
* Disable "Add/Edit connectors" button then cut to parts
* Fixed flip_cut_plane()
* Fixed cut by Line, when draw line over the cut plane
* Fixed apply of the transformations, when cut to parts
Cut improvements:
* Process "Ctrl"
* Change color of the cut plane when it's hovered
* Don't apply Cut information for result object(s), if cut doesn't have any connector or is cut to parts
(partially related to #9633 - Add option to Invalidate Cut Info at the time of cutting)
+ Rework CutDialog
+ Added "Cut to" section (Idea from #9564[Cut: Keep results as parts of current idea] was used, but there is other implementation)
+ Fix for #9657 - Inconvenient gizma, blocks the view of the cut of small parts
+ Add functionality "Flip cut plane" = Fix for #9632 - Adding connectors to either split cut part
+ ImGuiWrapper: added tooltip for button
Organic supports are not compatible.
Fixes#9528 and similar.
Moved the object max Z against build volume Z to Print::validate().
Updated layer_height_profile_from_ranges() to compress the resulting
ranges.
When try to delete something from the cut object, than not just inform the users about an impossibility of this action,
but allow them to invalidate a cut information or delete all connectors from related objects, but leave the cut info.
* CutGizmo: Fixed a label scale
* Fixed deselection of selected connectors, when moving the camera
* Implemented update of the settings for selected connectors
* Connector selection: Ctrl shortcut is changed to Shift to compatibility of the selection/deselection with rectangle selection
* Suppress to split cut objects
* ObjectList:
* Use another icons to mark the cut objects and connectors
* For the cut object show parts, which are not connectors
* Set different colors for the Plugs and Dowels
* CutGizmo:
* Invalidate CutGizmo after changes in ObjectList or perform a cut
* CupPlane in Connectors mode: Unselect selection, when click on empty space
* Connectors mode: Fixed performance issue
+ Fixed a crash during change object selection, when CutGizmo is On
+ Fixed Undo/Redo (was accidentally broken with 7912613dc8e11db2ddea8018ce16b26a01756a3b)
* Suppress to delete/add a SolidPart/NegativeVolume from/for objects which are marked as "is cut"
* Suppress to delete Instances which are marked as "is cut"
* Allow delete an object which is marked as "is cut", but show warning message about break of the "cut consistency".
And if this deletion was performed, the all related objects will be unmarked.
* m_connectors_cnt is added into CutObjectBase class to correct synchronization of a connectors count between related objects
+ Added CutObjectBase class which contains cut attributes for object
+ ObjectList and ManipulationPanel :
* Disable all ManipulationEditors for solid/negative volumes of cut object
* Disable Scale/Size ManipulationEditors for objects/instances of objects which are CutParts of initial object
+ Scale/Rotation/Move gizmos are disabled for solid/negative volumes of cut object
+ Select whole CutParts of initial object when ScaleGizmo is active