Commit graph

213 commits

Author SHA1 Message Date
Lukas Matena
a6e737f05a Various small changes in hollowing gizmo:
- changed layout of controls
- fixed supports appearing when they shouldn't
- fixed clipping plane (holes were hidden at a bit different position of the plane then appropriate)
- when hollowing is done, clipping plane is automatically moved to show the cavity
- the dialog should no longed overlap bottom-left corner controls
- gizmo controls now correspond to config values in ObjectSettings box and both update each other
- added undo/redo support when manipulating holes
2019-12-03 10:45:49 +01:00
Lukas Matena
14d56929e7 SLA drain holes can be removed by right click, Ctrl+A selects all holes 2019-11-29 14:12:31 +01:00
Lukas Matena
735f82c019 Hollowing gizmo has now its own shortcut [H], fixed a situation with supports showed in editing mode 2019-11-29 13:56:39 +01:00
Lukas Matena
bc0db7dc91 Quickly added a hole height setting 2019-11-22 15:45:48 +01:00
Lukas Matena
9dd18a8d6d Started work on extending EigenMesh3D to account for possible drain holes when raycasting 2019-11-19 11:33:49 +01:00
tamasmeszaros
d4d037792d Holes are now visible on slices in preview. 2019-11-13 15:55:37 +01:00
Lukas Matena
73ae733484 New icon for the hollowing gizmo 2019-11-12 15:04:40 +01:00
Lukas Matena
b6edd5ddb9 SLA support points gizmo renders the holes and does not allow to place a support point in them 2019-11-12 11:48:12 +01:00
tamasmeszaros
a69e80b987 Fix non thread-safe data flow between plater and hollowing gizmo. 2019-11-11 17:27:32 +01:00
tamasmeszaros
60650d0dfc Progress indication for hollowing gizmo. 2019-11-11 16:10:46 +01:00
tamasmeszaros
c22423a219 Merge branch 'tm_openvdb_integration' into lm_tm_hollowing
* Refactor file names in SLA dir
2019-11-11 12:55:22 +01:00
tamasmeszaros
ac8eab5fa8 Enhanced hollowing scheme, closing distance working as expected. 2019-11-08 16:51:43 +01:00
Lukas Matena
645f13a0ae Drain holes are now saved in ModelObject
Internal changes in GLGizmoHollow.cpp
2019-11-08 14:05:56 +01:00
tamasmeszaros
4b08865809 hollowing params renamed, filtering generalized 2019-11-08 09:21:30 +01:00
Lukas Matena
9836533cb3 Hollowing task triggered by the gizmo now spawns a UI job to not block the UI thread
The AABB tree calculation is still done in the UI thread, so it gets blocked for some time
2019-11-07 14:25:03 +01:00
tamasmeszaros
bc3d22348a Hollowing params: accuracy and smoothness 2019-11-07 09:34:34 +01:00
tamasmeszaros
a82f1268f3 Hollowed interior is now visible in preview 2019-11-06 14:26:15 +01:00
tamasmeszaros
bdf6f7342e Hollowing step in SLAPrint process, PrintConfig params added. 2019-11-06 13:38:43 +01:00
Lukas Matena
013e613221 Hollowing gizmo can now actually trigger the hollowing and render result 2019-11-05 14:40:22 +01:00
Lukas Matena
3fe160e60a Added possibility to change hole height and taper
The parameters are yet not saved in ModelObject and they are common for all holes
2019-11-05 10:17:30 +01:00
Lukas Matena
04bcdff110 Added new hollowing gizmo
Basically just copied SLA support gizmo and removed all functionality that will not be needed
2019-11-05 10:17:27 +01:00
Lukas Matena
62c90abbc0 Fix of SPE-1041: set_state function for gizmos is called even if they are turned on/off by the undo/redo action 2019-10-25 13:10:33 +02:00
Enrico Turri
8b4799d734 Do not show context menu when the user deletes sla support points by right clicking on them and the mouse pointer is hovering the selected object 2019-10-10 16:00:32 +02:00
Lukas Matena
c1e3be9b27 MeshUtils.cpp: MeshRaycaster is now aware of the clipping plane 2019-09-24 12:58:12 +02:00
Lukas Matena
6bcafd7c83 SLA gizmo no more uses IGL code directly, all was moved to the new MeshRaycaster class 2019-09-17 14:57:57 +02:00
Lukas Matena
1dfd8a0e62 MeshRaycaster class is now used in SLA gizmo when selecting by rectangle 2019-09-17 14:57:54 +02:00
Lukas Matena
3694bf3da9 Added functions get_hit_pos, get_hit_normal, ready to implement intersect_ray 2019-09-17 14:57:49 +02:00
Lukas Matena
b6292247e8 Unproject on mesh in the SLA gizmo is now performed by the MeshRaycaster class 2019-09-17 14:57:45 +02:00
Lukas Matena
70c0c87598 Renamed MeshClipper.cpp/.hpp to MeshUtils.cpp/.hpp
More helper classes like the MeshClipper could live here
Moved ClippingPlane class in here to start
2019-09-13 12:03:53 +02:00
Lukas Matena
9782701dd4 Calculating the transformations is now only performed by the MeshClipper
Attempted to get mirroring right (that never worked correctly with the clipping plane in the sla gizmo)
The transformation of the support mesh is kind of a mystery to me, hopefully it is right
Also cleaned the code a bit (removed commented-out code, unused variables, etc)
2019-09-13 12:03:53 +02:00
Lukas Matena
546917830b Initial implementation of MeshClipper class
So far the work is shared between the old code in GLGizmoSlaSupports.cpp and the new class
2019-09-13 12:03:53 +02:00
Lukas Matena
cf23146ee3 Refactoring the SLA clipping plane
The plane is now internally stored as a plane in world coordinates
2019-09-13 12:03:53 +02:00
bubnikv
6ba43ebacb Merge remote-tracking branch 'remotes/origin/master' into dev 2019-09-09 17:49:07 +02:00
Enrico Turri
eae02f6cad Fixed handling of mouse left up event when moving an object while the place on face gizmo is active 2019-09-09 14:56:55 +02:00
Lukas Matena
09e4ac42ba Fixed some more warnings (mostly GLGizmoSlaSupports.cpp) 2019-09-04 16:05:32 +02:00
Enrico Turri
308f601a99 Removed another bunch of compile warnings 2019-09-04 10:46:51 +02:00
Lukas Matena
fd47891793 GLGizmoSlaSupports.cpp: Snapshot label now differs for turning the gizmo on/off
This behaviour was broken by recent merge
2019-09-03 10:16:06 +02:00
Lukas Matena
b89d9c7aff Merge branch 'lm_gizmomanagerrefactoring' into dev 2019-09-03 08:29:31 +02:00
Lukas Matena
942f959e87 Fixed couple of warnings
Turned several includes into forward declarations
Removed several sprintf calls in favor of std::to_string
2019-09-02 16:27:48 +02:00
Lukas Matena
d8a274c5ab Nearly finished refactoring of GLGizmoManager 2019-09-02 14:30:15 +02:00
Lukas Matena
409a7c7734 SLA gizmo open/close should be saved on undo/redo stack 2019-09-02 14:30:15 +02:00
Lukas Matena
b6d35c9840 Started an attempt to refactor GLGizmoManager 2019-09-02 14:30:12 +02:00
Enrico Turri
7f589e79f7 Follow-up of 32dc4709a4 -> A more general fix 2019-08-26 09:06:21 +02:00
bubnikv
6adebb9c78 When synchronizing the front end with the back end after Undo / Redo
jump, postpone error messages, so they are displayed after
the Undo / Redo jump has been fully performed.
Otherwise there would be a message box opening, taking over the message
queue, and possibly performing actions as rendering on an inconsistent
application state.
2019-08-23 15:53:45 +02:00
bubnikv
12cb930634 A little optimizaiton 2019-08-23 13:27:19 +02:00
Lukas Matena
1d8e060b75 Followup of previous commits - removing some unnecessary code 2019-08-23 12:11:45 +02:00
Lukas Matena
bf232e1ade Fixed forward declaration of struct Slic3r::UndoRedo::Snapshot so MSVC does not complain 2019-08-23 10:34:16 +02:00
Lukas Matena
52933d1bab Recalculate SLA supports after undo/redo in case SLA gizmo was active and had supports when the snapshot was taken 2019-08-23 01:42:59 +02:00
Lukas Matena
b55a140ad4 SLA gizmo takes snapshots on opening and closing 2019-08-23 01:42:59 +02:00
Lukas Matena
c736b657d4 SLA gizmo now refuses to close with unsaved changes in editing mode 2019-08-23 01:42:59 +02:00