47 Commits

Author SHA1 Message Date
enricoturri1966
afcac6e2ea Tech ENABLE_GLBEGIN_GLEND_REMOVAL - Refactoring of GLModel to:
1) allow for custom vertex data layout

2) allow for custom index data format

3) allow for any OpenGL primitive type
2022-01-27 12:00:51 +01:00
enricoturri1966
6201dad245 Tech ENABLE_COLOR_CLASSES set as default 2022-01-14 08:19:00 +01:00
enricoturri1966
cd4094743e Tech ENABLE_COLOR_CLASSES - 1st installment -> Introduction of classes ColorRGB and ColorRGBA to unify color data definition and manipulation 2021-12-22 10:45:35 +01:00
enricoturri1966
e3d5cd445c Gizmos refactoring - Removed GLModels defined into GLGizmoBase, and mostly unused, to avoid wasting GPU memory. Use a shared GLModel for Gizmos inheriting from GLGizmoPainterBase. Initialization of GLModels moved from constructor to render methods 2021-12-10 11:28:12 +01:00
Lukas Matena
67373ca722 Changed gizmo entering/leaving string handling to make localization easier 2021-11-19 12:16:46 +01:00
Lukas Matena
c61a5d234e After gizmo snapshots are compacted, rename the last one to something generic 2021-09-30 12:17:52 +02:00
Lukas Matena
a4300b8e64 Naming of the entering/leaving snapshots is now more generic,
it uses the actual name of the gizmo. Also, the keyboard shortcut
is now appended to the name, instead of being duplicated in it.
2021-09-03 13:53:07 +02:00
Lukas Matena
4c80d9ed01 Fix taking entering/leaving snapshots in SLA gizmo:
This was broken between 2.2.0 and 2.3.0. The 'entering' snapshot
should be taken before the gizmo opens, not after. Otherwise it is
in fact the same as the next snapshot.
2021-09-03 13:53:07 +02:00
Filip Sykala
6d895872b0 call render in main thread by function callAfter(hint by @Vojtech) 2021-08-20 14:29:52 +02:00
Filip Sykala
8fab4885c7 Add dirty state into Gizmo (hint by @DavidKocik) 2021-08-20 09:13:09 +02:00
enricoturri1966
b24488ce51 Tech ENABLE_SINKING_CONTOURS -> Sinking contours shown while dragging Move/Rotate/Scale gizmos and show contours for gizmo cut 2021-07-27 13:02:06 +02:00
Lukas Matena
8c560522a3 Fixed rendering of gizmo grabbers 2021-05-28 16:44:13 +02:00
enricoturri1966
9605d10caa Unified color definition 2021-05-28 16:44:13 +02:00
enricoturri1966
b63de990d4 Removed static members from GLGizmoBase and GLGizmoBase::Grabber to fix OpenGL error when closing the application 2021-05-28 16:44:13 +02:00
Lukas Matena
2e24e689fa Grabbers and support points appearence tweaking, some refactoring 2021-05-28 16:44:13 +02:00
Lukas Matena
97b7ef7dc0 Removed GLU calls from all the gizmos 2021-05-28 16:44:13 +02:00
Lukas Matena
01b59ff57b Seam gizmo created on frontend 2020-09-01 18:18:57 +02:00
Lukas Matena
94b0ab603f Include cleanup: Selection.hpp
It does not need 3DScene.hpp and Model.hpp
And it does not to be included by GLGizmoBase.hpp
2020-05-26 13:46:59 +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
8475968025 First installation of common gizmo data pool 2020-04-07 16:35:52 +02:00
enricoturri1966
61f3b53ef8 Fixed conflicts after merge with master 2020-03-18 14:26:44 +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
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
4c22023762 SLA gizmo clipping plane resetting
Clipping plane direction is now initialized when the plane is first moved, not when the gizmo is opened. This is how previous versions worked.
This is a minimal-effort solution before the clipping plane is refactored properly.
2020-02-21 09:46:40 +01:00
Lukas Matena
4df6a645f2 AABB trees for SLA gizmos are not calculated when the object is selected, but only after one of the gizmos is opened 2020-02-21 09:46:40 +01:00
Lukas Matena
90a8076d25 SLA support gizmo correctly hides drain holes if they are clipped by clipping plane 2020-02-20 15:04:53 +01:00
Lukas Matena
58b5e75a9c SlaSupports gizmo - show holes position even when user did not Preview the drilled mesh 2020-02-04 15:03:10 +01:00
Lukas Matena
79da3a95e1 Clipping plane is now common for Hollowing and SLA supports gizmos 2020-02-03 15:17:18 +01:00
Lukas Matena
08dcbd0271 Hollowing gizmo - most of updating now assumes that common data struct is updated properly 2020-01-30 14:31:39 +01:00
Lukas Matena
3f73261fdb Fixed transformation of the hollowed mesh to be used at frontend
Common gizmos data update is called from GLGizmoManager
2020-01-29 10:08:26 +01:00
Lukas Matena
46fdce1169 SLA gizmos can now fetch hollowed and drilled mesh from the backend 2020-01-29 10:08:26 +01:00
Lukas Matena
57cf3d17e2 First steps on SLA and Hollowing gizmo data sharing 2019-12-17 15:57:24 +01:00
Lukas Matena
b6d35c9840 Started an attempt to refactor GLGizmoManager 2019-09-02 14:30:12 +02:00
Enrico Turri
7f589e79f7 Follow-up of 32dc4709a48bea7089d7d84d22e89e4db98baa49 -> A more general fix 2019-08-26 09:06:21 +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
Enrico Turri
da1fa0b6e3 Refactoring of GLGizmosXX classes to cleanup their interface 2019-07-17 12:06:23 +02:00
Enrico Turri
21624f5305 Framework to serialize gizmos into undo/redo stack
Serialization into undo/redo of Cut gizmo

Refactoring of GLGizmosManager
2019-07-17 08:38:48 +02:00
Enrico Turri
cc70c8dff9 Tech ENABLE_SVG_ICONS set as default 2019-07-12 10:13:35 +02:00
Enrico Turri
d69c98b48d Constrained gizmo-scaling -> code cleanup and simplification 2019-05-10 13:07:59 +02:00
Enrico Turri
128da453d5 1st installment of constrained gizmo-scaling 2019-05-10 11:13:55 +02:00
Enrico Turri
2c9e3819c1 Darker colors for axes arrows, transformation visual hints and gizmo grabbers 2019-04-29 09:02:04 +02:00
Enrico Turri
d23824af97 GLCanvas3D::Gizmos as a standalone class (GLGizmosManager) 2019-03-20 13:51:25 +01:00
Enrico Turri
80c1a8d8e4 GLCanvas3D::Selection as a standalone class 2019-03-19 13:30:21 +01:00
Lukas Matena
e813a562a1 Removed technology ENABLE_IMGUI 2019-03-18 11:45:15 +01:00
Lukas Matena
d3c8e3166e Separated gizmos into individual files 2019-03-18 11:45:15 +01:00