Commit Graph

290 Commits

Author SHA1 Message Date
Lukas Matena
822f9ff4a6 Fixed issues in SLA gizmos related to showing/hiding of the model/support structures 2020-01-16 13:18:43 +01:00
Lukas Matena
902d3bb904 Fixed loading of hole_height when a hole is selected (hollowing gizmo) 2020-01-16 13:18:43 +01:00
Lukas Matena
6e8bdb2c86 Fixed update of clipping plane when a gizmo was turned off 2020-01-16 13:18:43 +01:00
Lukas Matena
8c8256c6a2 Fixed diameter/radius mismatch in gizmo UI 2020-01-16 13:18:43 +01:00
Lukas Matena
a3f3c868eb Removed needless calls to instance_bounding_box 2020-01-16 13:18:43 +01:00
Enrico Turri
3f2ccf08d2 3Dconnexion devices translation linearly dependent on zoom 2020-01-16 10:17:07 +01:00
Lukas Matena
d0d73e6109 Hollowing config values contain min/max values, these are respected when setting through the gizmo
Rendering and hole transformation fixes (still WIP, though)
2020-01-14 10:33:10 +01:00
Lukas Matena
e9d340c87f Fixed transformations of the hollowed GLVolume 2020-01-09 14:09:26 +01:00
Lukas Matena
ff065aa9ba Switched order of hollowing and support points gizmos 2020-01-09 10:01:21 +01:00
Enrico Turri
5a63b9a6a0 Follow-up of 5b2e2fe7b3 -> Fixed uv mapping on gizmobar 2020-01-08 10:04:39 +01:00
Enrico Turri
5b2e2fe7b3 Fixed artifacts on toolbar and gizmobar icons showing up when changing screen or toolbar scale factors 2020-01-07 12:40:03 +01:00
Lukas Matena
6a870ef8bb Fixed incorrect z-shift when showing hollowed object 2020-01-06 16:02:55 +01:00
Lukas Matena
4d182a5748 Fixed scaling of the holes and instance showing/hiding 2019-12-20 11:33:14 +01:00
Lukas Matena
b3f15b1c98 Merge branch 'master' into lm_tm_hollowing 2019-12-20 10:33:53 +01:00
Lukas Matena
d1f86e0a80 SLA supports gizmo now uses hollowed mesh when available
Bugfix: SLA support tree is is now given the hollowed mesh, not the original
Added ImGui separators and change background alpha in hollowing gizmo dialog (to match the other gizmos)
2019-12-20 10:17:59 +01:00
Lukas Matena
57cf3d17e2 First steps on SLA and Hollowing gizmo data sharing 2019-12-17 15:57:24 +01:00
Lukas Matena
2cb30f3641 First prototype of CGAL hole-drilling 2019-12-13 13:42:10 +01:00
Enrico Turri
f2b8607d11 Fixed positioning of gizmos' imgui dialogs 2019-12-12 13:38:08 +01:00
Lukas Matena
537260494d Merge branch 'master' into lm_tm_hollowing 2019-12-12 11:37:33 +01:00
Enrico Turri
d6f5ed9ad0 Refactoring in GLGizmosManager to simplify code 2019-12-12 11:11:11 +01:00
Lukas Matena
135660decf SLA gizmos fix: clipping of points/holes always used coords from the first instance
Few warnings fixed
2019-12-12 10:40:28 +01:00
Enrico Turri
57d069bd0a Some rework on layout of imgui dialogs 2019-12-11 15:30:25 +01:00
Enrico Turri
a7b12f97db Gray icons for gizmos in disabled state 2019-12-09 15:21:18 +01:00
tamasmeszaros
3b0241c98b Fix trianglemesh slicer error with empty meshes 2019-12-06 10:59:05 +01:00
Enrico Turri
8728f192c6 Follow-up of c370bb7141 -> Do not force even size of toolbars icon textures 2019-12-05 14:43:18 +01:00
Enrico Turri
c370bb7141 Forces even size and disable compression for toolbar icon texture to try to solve artifacts on OsX Catalina 2019-12-05 12:22:24 +01:00
YuSanka
ee71f83939 Localization improvements:
* fixed "\n" at the end of phrases
 + updated list of files to localization
 + new PrusaSlicer.pot
 + Japanese localization
2019-12-04 11:14:13 +01:00
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
Lukas Matena
24b9c926c6 GLGizmoManager.cpp: Initial work on the possibility of a gizmo refusing to close 2019-08-23 01:42:59 +02:00
bubnikv
23b2b4c59f Merge remote-tracking branch 'remotes/origin/vb_picking_fix' 2019-08-08 09:50:02 +02:00
Lukas Matena
1789179506 GLGizmoSlaSupports.cpp: unproject_on_mesh does not throw exceptions but uses bool return value to signal success 2019-08-07 16:17:41 +02:00
bubnikv
841d0796b7 Fix of the SLA gizmo picking. 2019-08-07 15:36:09 +02:00
bubnikv
2d7f478dac Finished picking by color with a checksum in the alpha channel
to guard against unwanted alpha blending and / or multi sampling.
2019-08-07 14:15:38 +02:00
bubnikv
1ba9100994 Fix of gizmo deserialization after Undo / Redo: Deselect all gizmos
but the gizmo to be deserialized.
2019-07-31 14:00:43 +02:00
Lukas Matena
599f2e07db Config parameters accessible from SLA gizmo are now saved on the undo/redo stack 2019-07-31 12:40:47 +02:00
Lukas Matena
ab0d1af3ca Fixed a problem with deleting button in SLA gizmo 2019-07-31 10:33:03 +02:00
Lukas Matena
99f34f8321 SLA gizmo: fixed a crash with multiple selection 2019-07-31 10:18:49 +02:00
bubnikv
ca1c78b3fc Merge remote-tracking branch 'remotes/origin/et_custom_bed' 2019-07-30 16:48:47 +02:00
Lukas Matena
07608a80cd SLA gizmo - making sure the cone direction is correctly undone/redone 2019-07-30 14:51:57 +02:00
Lukas Matena
eeef3b42df SLA gizmo now uses the new separate undo/redo stack for manual editing mode 2019-07-29 13:07:49 +02:00
Lukas Matena
fe62362960 Hiding the sla support structures after undo/redo 2019-07-28 11:37:08 +02:00
Enrico Turri
9bcdb2ebd0 Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer into et_custom_bed 2019-07-25 15:29:25 +02:00
Enrico Turri
4e4bdb5edd Removed obsolete code 2019-07-25 15:28:34 +02:00
Enrico Turri
1b5ba6c823 Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer into et_custom_bed 2019-07-23 15:36:39 +02:00
Lukas Matena
0ae46b0635 SLA gizmo and undo/redo: 'autogenerated points' state is now correctly undone/redone 2019-07-23 15:23:38 +02:00
Lukas Matena
91a5d70a62 Fixed a few warnings in headers (meaning they were reported once for each include)
Fixed an identification of CXX compiler in cmake so that 'AppleClang' is recognized
2019-07-23 14:02:20 +02:00
Enrico Turri
9cb1a584e1 Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer into et_custom_bed 2019-07-22 08:21:40 +02:00
enricoturri1966
33c0683d11 Reworked rendering of toolbars background texture 2019-07-20 12:02:29 +02:00
Enrico Turri
749bb2bfed Refactoring in GLTexture 2019-07-19 11:18:19 +02:00
bubnikv
a0ea96968d Storing the active printer technology onto the Undo / Redo stack,
remembering the last selected Printer profile for the SLA and FDM
technologies separately, and activating them on Undo / Redo.

When switching the technologies, user is asked whether to discard
the modified profiles or not.
2019-07-18 17:41:47 +02:00
Lukas Matena
2b9d285a16 'Place on face' gizmo fix (it used invalid pointer after undo/redo was implemented) 2019-07-17 15:39:58 +02:00