Commit graph

517 commits

Author SHA1 Message Date
Lukas Matena
ff0630cad2 FDM supports gizmo: fixed rendering on mirrored objects 2020-05-21 10:25:31 +02:00
Lukas Matena
feb591782f FDM supports gizmo: fixed a crash when trying to paint on the clipping plane 2020-05-21 10:25:31 +02:00
Lukas Matena
9c365da828 Removed immediate OpenGL mode calls in place on face gizmo 2020-05-21 10:25:31 +02:00
Lukas Matena
6e597bb1ee Removed immediate OpenGL mode calls for clipping plane rendering 2020-05-21 10:25:31 +02:00
Lukas Matena
ac8491b599 SLA supports gizmo bugfix: show supports when not in editing mode
The bug was introduced after 2.2.0 release
2020-05-21 10:25:31 +02:00
Lukas Matena
581892cb0d FDM supports gizmo uses neighbor data from stl_file 2020-05-21 10:25:31 +02:00
Lukas Matena
1a38d39f82 FDM supports gizmo: slight code refactoring 2020-05-18 16:08:21 +02:00
Lukas Matena
ed55ebba55 FDM supports gizmo: Further attempts to increase performance when painting 2020-05-18 16:08:21 +02:00
Lukas Matena
e312f3be43 FDM supports gizmo: caching triangle normals in order to increase performance 2020-05-18 16:08:21 +02:00
Lukas Matena
e2ccc6ec0c FDM supports gizmo: trying to increase performance during painting 2020-05-18 16:08:21 +02:00
enricoturri1966
9487676680 ENABLE_CANVAS_TOOLTIP_USING_IMGUI set as default 2020-05-15 13:40:45 +02:00
enricoturri1966
b9f0b9eeda ENABLE_GIZMO_TOOLBAR_DRAGGING_FIX set as default 2020-05-15 12:42:29 +02:00
Lukas Matena
ee639a4710 FDM supports gizmo: do not disable slope visualizer when it should stay on 2020-05-14 14:17:20 +02:00
YuSanka
e7f3206250 Auto scale of the toolbars in respect to the canvas size 2020-05-12 23:07:35 +02:00
Lukas Matena
d928d6e47e Hollowing gizmo fix: selection of single holes was recently broken 2020-05-12 14:03:10 +02:00
Lukas Matena
b046eb4fc9 Merge branch 'master' into lm_fdm_custom_supports_polishing 2020-05-11 17:03:03 +02:00
Lukas Matena
cab3bf2f20 FDM supports gizmo: the cursor does not stick to the cut when clipping plane is used 2020-05-11 16:59:51 +02:00
Lukas Matena
6391200390 FDM supports gizmo fix: make sure that slope visualizer is off when turning off the gizmo 2020-05-11 16:59:43 +02:00
Lukas Matena
4ed1b49955 Slope visualiser angle inverted
It showed facet normal angle in the GUI, now it shows slope angle (90 deg complement). This change was made to unify it with threshold angle in Print Settings.
2020-05-11 16:57:40 +02:00
enricoturri1966
0bb56736a1 Tech ENABLE_NON_STATIC_CANVAS_MANAGER set as default 2020-05-06 12:19:34 +02:00
Lukas Matena
d90cea7aad FDM supports - setting by angle highlight the facets in real time (experiment) 2020-05-06 08:16:44 +02:00
Lukas Matena
d24a3453af Added simple autosetting of custom supports based on facet normal angle 2020-05-06 07:03:32 +02:00
Lukas Matena
272de22055 Undo/redo in FDM supports gizmo 2020-05-05 13:45:04 +02:00
Lukas Matena
0c84a0b696 Fixed SLA supports gizmo undo/redo stack
broken by 4f43c6d even before 2.2.0 release
2020-05-05 11:17:32 +02:00
Lukas Matena
377c7d3086 FDM supports gizmo is aware of the clipping plane 2020-04-30 16:57:09 +02:00
Lukas Matena
1e12863ceb FDM custom supports gizmo now has a 'Remove all' button 2020-04-22 11:57:12 +02:00
Lukas Matena
2f8a5dd6f6 Merge branch 'master' into lm_fdm_custom_supports_backend 2020-04-17 14:19:16 +02:00
Lukas Matena
be9dcf0c77 Fixup of previous commit 2020-04-17 14:17:11 +02:00
Lukas Matena
9921945cbf Fixed a failing assertion in FDM supports gizmo
It was a result of attempting to render an empty GLIndexedVertexArray
2020-04-17 11:11:12 +02:00
Lukas Matena
546b0702f9 Custom supports data are saved into ModelObject and propagate to the backend
Invalidation of supports after they change is not implemented yet.
2020-04-16 16:57:46 +02:00
Lukas Matena
51739b70a1 FDM supports gizmo cursor size now accounts for (uniform) scaling of the mesh
Added tooltips on the sliders
2020-04-09 18:36:57 +02:00
Lukas Matena
23da5910c6 FDM supports gizmo now uses VBOs instead of immediate mode 2020-04-09 15:56:43 +02:00
Lukas Matena
3e15d22f35 Fixed a crash when switching to Preview 2020-04-08 17:22:30 +02:00
Lukas Matena
23fbc2ff1a Alt+mouse wheel adjusts cursor size in FDM supports gizmo 2020-04-08 15:21:41 +02:00
Lukas Matena
4d8e6538e8 FDM supports gizmo - use right mouse to place support blockers 2020-04-08 14:59:53 +02:00
Lukas Matena
55c87886fa FDM supports gizmo now ignored modifiers and support enforcer/blockers 2020-04-08 12:58:48 +02:00
Lukas Matena
c32fa67523 Clipping plane can now handle multiple-part objects 2020-04-08 11:52:22 +02:00
Lukas Matena
fe57826695 Improved the FDM supports gizmo dialog
Removed unused code
Fixed a clipping-plane related crash
Fixed a crash in hollowing gizmo when no hollowed mesh was provided
Forbid opening the gizmo when a part of an object is selected
2020-04-08 09:37:49 +02:00
Lukas Matena
17811598ac Fixed obvious merge conflicts
FDM supports gizmo uses the new common data infrastructure
2020-04-07 19:44:29 +02:00
Lukas Matena
a380053a17 Merge branch 'lm_gizmos' into lm_fdm_supports_gizmo 2020-04-07 17:16:48 +02:00
Lukas Matena
1d65ce760b Removed obsolete code
Got rid of dummy header GLGizmos.hpp
2020-04-07 16:47:39 +02:00
Lukas Matena
535a27de65 Fixed crash related to ClippingPlane and incorrect handling of sla z shift in hollowing gizmo 2020-04-07 16:47:39 +02:00
Lukas Matena
c704849a7a SLA supports gizmo is now enabled and uses the new infrastructure 2020-04-07 16:47:39 +02:00
Lukas Matena
c79e90b921 SupportsClipper implementation 2020-04-07 16:47:39 +02:00
Lukas Matena
e82ead0335 InstancesHider allows to show/hide supports on demand 2020-04-07 16:47:39 +02:00
Lukas Matena
5d4014a4a5 ObjectClipper implementation, hollowing gizmo reenabled
ObjectClipper tracks active mesh (incl. possible hollowing), remembers clipping plane position and can render the cut on demand
Hollowing gizmo uses the new infrastructure
2020-04-07 16:45:16 +02:00
Lukas Matena
d9e5721cb7 Raycaster can now handle multiple volumes
This is necessary for future FDM supports gizmo. SLA objects only have one volume, so it wasn't needed until now.
2020-04-07 16:42:59 +02:00
Lukas Matena
bf734c8f68 Raycaster wrapper
The raycaster manages a MeshRaycaster object that the gizmo can ask to perform raycasts
If the hollowed mesh tracker is enabled and the hollowed mesh is newly calculated/invalidated, the raycaster automatically updates.
2020-04-07 16:40:59 +02:00
Lukas Matena
81dba7677b Hollowed mesh tracker implementation
The class tracks state of the backend calculation and if there is a hollowed/drilled mesh, it can provide a pointer to it
2020-04-07 16:40:10 +02:00
Lukas Matena
7e797eaaf8 Dependencies check in debug mode
Some common resources can depend on each other - this checks that the requirements are consistent
2020-04-07 16:39:18 +02:00