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
Lukas Matena
3db3a61520
InstancesHider implementation
...
Any gizmo can now ask for hiding all but the active instance by returning proper value from on_get_requirements
2020-04-07 16:39:06 +02:00
Lukas Matena
593e7a1546
Flattening gizmo now uses the new CommonDataPool to store pointer to active object
2020-04-07 16:35:52 +02:00
Lukas Matena
3b06332999
Common gizmos data are now handled by the CommonGizmosDataPool object
2020-04-07 16:35:52 +02:00
Lukas Matena
7c4071c541
Disabled the SLA gizmos
2020-04-07 16:35:52 +02:00
Lukas Matena
8475968025
First installation of common gizmo data pool
2020-04-07 16:35:52 +02:00
enricoturri1966
f12b39be25
Fixed conflicts after merge with master
2020-03-25 14:41:47 +01:00
enricoturri1966
fac28ea27a
Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer into et_bug_fixes
2020-03-25 09:34:17 +01:00
enricoturri1966
3990598f01
Fixed build when ENABLE_GIZMO_TOOLBAR_DRAGGING_FIX is disabled
2020-03-25 09:33:59 +01:00
enricoturri1966
c300b66b7e
ENABLE_MODIFIED_GIZMOBAR_MOUSE_EVENT_HANDLING merged into ENABLE_CANVAS_TOOLTIP_USING_IMGUI
2020-03-25 09:05:35 +01:00
Lukas Matena
97b9de47b4
Merge branch 'master' into dev
2020-03-24 21:51:05 +01:00
enricoturri1966
2501cf64c0
Modified mouse events handling for gizmobar
...
The gizmobar was consuming the mouse up event preventing the gizmos to update their tooltip
The gizmobar was also consuming the mouse dragging event transforming a gizmo manipulation into a scene rotation
2020-03-19 14:05:49 +01:00
Lukas Matena
6d23c08d00
WIP
2020-03-19 12:04:05 +01:00
Lukas Matena
f275461354
WIP: FDM supports gizmo now works with multiple part objects into some extent
2020-03-19 11:15:17 +01:00
Lukas Matena
1b05ecae8c
WIP: FDM gizmo: triangles not facing the camera are no more selected with fdm selection tool
2020-03-19 11:15:17 +01:00
Lukas Matena
590569e8f6
WIP: Optimized the triangle selection so it does not iterate over all the triangles
2020-03-19 11:15:17 +01:00
Lukas Matena
2e71dcefc3
WIP: Added a circle cursor and naive logic to select triangles inside
...
Deselection is possible when holding shift
Triangles obscured by the mesh are selected nonetheless (so far)
2020-03-19 11:15:17 +01:00
Lukas Matena
08daddb5de
WIP: First working implementation of the triangle selector for the FDM support gizmo
2020-03-19 11:15:17 +01:00
Lukas Matena
7afe7326b6
WIP: Duplicated the SLA gizmo for the FDM, removed what was not needed
...
Clipping plane and the m_model_object pointer keeping was duplicated
2020-03-19 11:15:17 +01:00
enricoturri1966
61f3b53ef8
Fixed conflicts after merge with master
2020-03-18 14:26:44 +01:00
enricoturri1966
8a824bb8c2
Refactoring
2020-03-18 13:35:46 +01:00
enricoturri1966
df6170b9bd
Fixed gizmos' tooltips
2020-03-17 09:41:54 +01:00
enricoturri1966
a0ed240af1
Generate gizmos' tooltip on demand
2020-03-16 16:37:22 +01:00
enricoturri1966
ffe404fc5b
Fixed gizmos' tooltips
2020-03-16 12:45:39 +01:00
Lukas Matena
e547a0c3d1
Fix of a rare crash on opening an SLA gizmo (supports or hollow)
2020-03-13 15:58:59 +01:00
Lukas Matena
6918f11100
Removed SLA unused code
...
Mostly the dead-ends that were tried when hollowing was being implemented
2020-03-03 15:53:26 +01:00
Lukas Matena
50ebdf5293
Include cleanup in Plater, GLCanvas3D and GLGizmosManager
2020-03-03 15:53:26 +01:00
Enrico Turri
2f8970de86
Fixed conflicts after merge with master
2020-03-02 11:35:03 +01:00
Enrico Turri
0b629eb905
GLCanvas3DManager moved from being a static member of _3DScene to be a normal member of GUI_App
2020-03-02 10:58:46 +01:00
Lukas Matena
03f17a13e7
Bugfix: SLA pad and supports were sometimes shown on instances that should have been hidden
...
The showing/hiding block cannot depend on whether the mesh was recently updated.
It would then not hide the supports and pad, which are calculated later than the hollowed mesh.
2020-02-27 17:58:27 +01:00
Lukas Matena
73ad48c135
Small fix of clipping plane positioning
...
If the clipping plane is moved automatically after hollowed mesh was created, move the clipping plane and fix current direction so it is not reset when user wants to move it
This is a quick solution for the 2.2.0 release. It should be later refactored as mentioned in the code.
2020-02-27 15:18:15 +01:00
Lukas Matena
08a6c86326
Slight change in clipping plane updating after hollowing finishes
...
The clipping plane in SLA gizmos is only moved in case that the gizmo is currently active and hollowing is actually enabled.
2020-02-27 15:18:15 +01:00
Lukas Matena
5a2da9597b
Shared data for SLA gizmos have been removed from GLGizmoBase
...
This commit introduces no functional changes, only code-shuffling
2020-02-27 15:18:15 +01:00
Lukas Matena
a3869736ba
SLA gizmos can now be opened when any instance is selected
...
This was broken - only first instance worked
2020-02-27 15:18:15 +01:00
Lukas Matena
b2b2574244
Fixed a crash when deleting an object after switching from SLA to FDM
2020-02-27 15:18:15 +01:00
Lukas Matena
c326b31c92
Enabled text-wrapping for tooltips in hollowing gizmo
2020-02-25 11:12:04 +01:00