Commit Graph

296 Commits

Author SHA1 Message Date
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
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
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
Lukas Matena
53f1a283f3 Hollowing gizmo sliders now contain a unit where appropriate 2020-02-21 14:24:50 +01:00
Lukas Matena
676448581d Fixed a bug in hollowing gizmo - hole depth not matching slider value after selection 2020-02-21 14:23:50 +01:00
Lukas Matena
598ec04639 Hopefully a fix for #3683 (encoding in hollowing gizmo) 2020-02-21 12:53:28 +01:00
Lukas Matena
003a54600d Make sure that objects are correctly shown/hidden when switched 2020-02-21 09:46:40 +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
f8c5855d55 Hollowing 'accuracy' and 'closing distance' are only shown in the hollowing gizmo when the respective mode is active 2020-02-13 15:55:36 +01:00
Lukas Matena
2f18101c77 Slightly changed hollowing gizmo title
'ing' forms were removed to match Cut gizmo
2020-02-13 14:22:16 +01:00
Enrico Turri
b0218daafe ENABLE_MODIFIED_TOOLBAR_TEXTURES set as default 2020-02-13 09:50:06 +01:00
Lukas Matena
79ce691d58 Don't calculate the AABB tree in FDM mode 2020-02-08 17:17:51 +01:00
Lukas Matena
808e45f5b3 Force backend update when hollowing gizmo is closed
Otherwise, moving holes will not invalidate the drilled mesh
One cannot do it immediately though, because that would also hide the hollowed mesh
2020-02-07 14:17:14 +01:00
Lukas Matena
e66632a595 Hollowing parameters should be labeled the same in the gizmo and in presets 2020-02-07 14:03:55 +01:00
Lukas Matena
665bc9e960 Hollowing: allow to place drain holes on the inner surface of a hollowed cavity
Drain holes are not allowed to be placed on its own inner surface. This was recently (0e3ebb3)
done by forcing invalidation of the slaposDrillHoles, which also invalidates and therefore
hides the drilled mesh. However, that also hides the hollowed mesh and it is not possible
to place holes inside the cavity.

This change does not dump the drilled mesh, but checks that no raycast hit ends up in a hole.
2020-02-06 17:58:26 +01:00
Lukas Matena
3c23917e9e SLA gizmos: make sure that the clipping plane is properly reset to zero when the shown meshes are exchanged 2020-02-06 14:46:02 +01:00
tamasmeszaros
b0588abdd2 Invalidate background process when HollowingGizmo modifies settings
Also, assertion fail in debug mode for m_selection
2020-02-05 14:21:06 +01:00
Lukas Matena
617912ecc1 Fixed a crash on deleting object with SLA gizmo active
Rephrased text informing about hidden objects in both SLA gizmos
2020-02-04 15:03:10 +01:00
Lukas Matena
0e3ebb3e07 Hollowing gizmo: Invalidate drilled mesh in case a hole is manipulated
This way the holes cannot be placed on its own walls
Downside is that AABB trees have to be recalculated
2020-02-04 15:03:10 +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
Enrico Turri
87daba9288 Movements and rotations by keyboard indipendent from gizmos:
Left arrow = Decrease X by 1mm

Right arrow = Increase X by 1mm

Up arrow = Decrease Y by 1mm

Down arrow = Increase Y by 1mm

PgUp = Rotate 45 degrees CCW

PgDown = Rotate 45 degrees CW
2020-02-04 11:42:58 +01:00
Enrico Turri
648060f4ec Smoother movements/rotations when using arrow keys 2020-02-04 10:31:50 +01:00
Enrico Turri
3371fa42da Follow-up of e042cab8fa -> Avoid polluting undo/redo stack 2020-02-04 09:32:09 +01:00
Enrico Turri
e042cab8fa Follow-up of 8453c88482, c09091c407 and 9d55121695 -> Use key down event in place of key up event 2020-02-03 16:05:13 +01:00
Lukas Matena
227cc4dc33 Fixed conflicts after merge
slaposHollowing was divided into slaposHollowing and slaposDrillHoles on master
This commit takes this into account on the code that was merged from lm_drilling_backend_rebased
2020-02-03 15:42:54 +01:00
Lukas Matena
a1d4dab999 Merge branch 'master' into lm_drilling_backend_rebased 2020-02-03 15:20:16 +01:00
Lukas Matena
d407fda433 Hollowing gizmo - controls layout improvements 2020-02-03 15:17:18 +01:00
Lukas Matena
79da3a95e1 Clipping plane is now common for Hollowing and SLA supports gizmos 2020-02-03 15:17:18 +01:00
Enrico Turri
8453c88482 Cut Gizmo -> added movements using arrow keys:
Up arrow = increase Z by 1mm

Down arrow = decrease Z by 1mm
2020-02-03 15:00:49 +01:00
Enrico Turri
c09091c407 Rotate Gizmo -> added rotations using arrow keys:
Left arrow = 90 degrees around Z axis CCW

Right arrow = 90 degrees around Z axis CW

Up arrow = 45 degrees around Z axis CCW

Down arrow = 45 degrees around Z axis CW
2020-02-03 14:51:25 +01:00
Enrico Turri
9d55121695 Move Gizmo -> added movements using arrow keys:
Left arrow = decrease X by 1mm

Right arrow = increase X by 1mm

Up arrow = increase Y by 1mm

Down arrow = decrease Y by 1mm
2020-02-03 14:39:16 +01:00
Lukas Matena
a6f7fc93f4 Gizmo updates - forget everything about the loaded mesh when an object is deselected 2020-01-30 15:26:23 +01:00
Lukas Matena
4f43c6d3f8 SlaSupports gizmo - most of updating now assumes that common data struct is updated properly 2020-01-30 14:31:52 +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
b41c6d7d64 Refuse to drill a broken mesh
Hole parameters defaults and limits changed a bit
2020-01-29 14:07:12 +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