Commit Graph
100 Commits
Author SHA1 Message Date
Lukas Matena 1e99454602 Hopefully fixed SLA dialog scaling issues on OSX 2019-05-13 15:10:01 +02:00
Lukas Matena 76c3da9aba An attempt to fix the SLA gizmo dialog so it does not crop long description on the sliders 2019-05-13 15:10:01 +02:00
Lukas Matena 5dbcec5126 Turn off the SLA gizmo when switching to FFF printer profile 2019-05-10 11:32:30 +02:00
Lukas Matena cf3b992269 GCode.cpp: Update the 'current_extruder' placeholder even if filament start gcode is empty 2019-05-06 14:48:59 +02:00
Lukas Matena e9a53e49db Arrange is accounting for the wipe tower now 2019-05-06 08:14:45 +02:00
Lukas Matena 5f226c5d7f Allow wipe tower rotation by the rotation gizmo 2019-05-06 08:14:45 +02:00
Lukas Matena 3ec17fae67 A hotfix for #2179 (GCode preview crash on T-1 in GCode) 2019-04-29 14:26:46 +02:00
Lukas Matena ae692635da Selection rectangle moved into a separate class 2019-04-24 13:25:41 +02:00
Lukas Matena 08cb5bc2c7 Wipe tower uses correct gcodes for RepRap gcode flavor (M907->M906, M900->M572 - should fix #1843)
Also, fixed proper setting of the extruder current during toolchange (was broken since 6da83c7)
2019-04-24 12:09:58 +02:00
Lukas Matena 7185125f9c Fixed out-of-bouds access in RammingChart.cpp in case the ramming was turned off 2019-04-24 10:12:23 +02:00
Lukas Matena 55c07394e5 Added dialog with shortcuts to the SLA gizmo, tried to improve the dialog look 2019-04-18 15:46:35 +02:00
Lukas Matena 0c1e223414 SLA gizmo clipping plane is now not necessarily perpendicular to camera direction 2019-04-17 14:27:20 +02:00
Lukas Matena 8df2a19974 SLA clipping plane can now be controlled by Ctrl + mouse wheel rotation 2019-04-17 14:27:20 +02:00
Lukas Matena 19759b4315 SLA gizmo clipping - changed color on the cuts of supports, turned their rendering in editing mode (when the supports are not shown) 2019-04-17 09:39:51 +02:00
Lukas Matena 63ce3c3150 SLA gizmo now does not make redundant copies of the object and supports meshes 2019-04-16 09:04:04 +02:00
Lukas Matena f33e9bf609 TriangleMeshSlicer is now initialized by const-pointer to the mesh, responsibility for calling require_shared_vertices is left to the caller 2019-04-16 09:04:04 +02:00
Lukas Matena a177a7e1da SLA gizmo clipping now also triangulates the cuts on support structure 2019-04-16 09:04:04 +02:00
Lukas Matena 4abcf7bec4 SLA gizmo dialog height increased so the new clipping plane slider fits 2019-04-12 14:25:41 +02:00
Lukas Matena 096d23f971 SLA gizmo fix: Discarding manual edits on autogenerated points removed all the points from the gizmo cache 2019-04-10 15:27:44 +02:00
Lukas Matena 678c513cb9 Merge branch 'master' into lm_sla_gizmo_clipping_plane 2019-04-10 13:43:02 +02:00
Lukas Matena e6439ad010 SLA gizmo fix: recalculation of the mesh was sometimes skipped 2019-04-10 13:33:58 +02:00
Lukas Matena 3a09f66e51 Fixed a literal in vertex shader that refused to compile on OSX 2019-04-08 16:05:18 +02:00
Lukas Matena f71e14a4d9 SLA gizmo now uses ctrl to add to selection and alt to remove from selection 2019-04-08 15:34:42 +02:00
Lukas Matena 837bc43c9f SLA gizmo on_set_state code is now called through CallAfter to prevent repeated wxMessageDialog appearances (seen on OSX) 2019-04-08 11:56:13 +02:00
Lukas Matena eadf7daa37 Merge branch 'master' into lm_sla_gizmo_clipping_plane 2019-04-08 10:50:10 +02:00
Lukas Matena 09cf1b9b00 Allowed general object transformation and SLA z-shift (clipping plane) 2019-04-08 10:31:53 +02:00
Lukas Matena 7531f2d5e7 Selection rectangle now respects the clipping plane position 2019-04-08 10:31:22 +02:00
Lukas Matena bbda1896f9 The gizmo is now able to triangulate and show the cut, the triangulated cut is cached 2019-04-08 10:31:19 +02:00
Lukas Matena 9b7857aaab SLA gizmo clipping plane logic moved to fragment shader
This means the clipping now works again with both legacy and modern OpenGL
2019-04-08 10:31:16 +02:00
Lukas Matena 273fcf68a1 SLA gizmo now uses glClipPlane instead of touching projection matrix
Messing with the projection matrix invalidates the z-buffer
This currently only works in OpenGL legacy mode
2019-04-08 10:31:13 +02:00
Lukas Matena bc9164e40c SLA gizmo now respects the clipping plane when rendering points and raycasting mouse onto mesh 2019-04-08 10:31:10 +02:00
Lukas Matena fd1f9d65fb First steps on SLA clipping plane 2019-04-08 10:31:04 +02:00
Lukas Matena 177f5b02fa Disabled layer editing mode for SLA 2019-04-05 09:51:58 +02:00
Lukas Matena 69027b53fd SLA gizmo now allows to deselect a point 2019-04-03 14:44:24 +02:00
Lukas Matena 2269e1b183 Deliberately setting the SLA dialog a bit too large
It is not possible to precisely calculate actual window size before the rendering, so I added a safety margin.
It would be nicer to let the window autoscale and only use the inflated dimension for possible moving the window upward to prevent collision with the bottom panel, but...
ImGui autoscaling does not work properly for some reason (the window size autoscales only after a mouse move), so this is a workaround.
2019-04-03 10:41:45 +02:00
Lukas Matena e20ffbfd85 SLA gizmo uses CallAfter to trigger SLA supports calculation to prevent recursive rendering calls 2019-04-02 09:36:16 +02:00
Lukas Matena 5f66a2d181 SLA gizmo dialog now respects system font settings 2019-04-01 14:51:18 +02:00
Lukas Matena 32ed064797 SLA gizmo fix: occasional crashes after deleting objects 2019-03-29 13:38:33 +01:00
Lukas Matena 490074a2dd SLA gizmo now turns off in case someone adds an object/instance (to prevent rendering points in thin air, etc.)
Also, a bug appering when adding an object larger than the bed and scaling it down was fixed (sla gizmo did not work correctly in that case)
2019-03-27 14:19:12 +01:00
Lukas Matena 3f7f8f978e Fix of sla gizmo (it sometimes showed supports for hidden objects) 2019-03-24 13:35:09 +01:00
Lukas Matena 0848617fd3 SLA gizmo fix: adding points to selection by Shift+click should now work again (was broken by 8466c55) 2019-03-22 10:56:51 +01:00
Lukas Matena 8b73608e9f SLA gizmo can be activated if the supports are outside the bed
Otherwise there is a possibility that the object gets out of bed when the gizmo is active (supports are generated with object close to the edge), which the gizmo does not expect
2019-03-20 15:37:13 +01:00
Lukas Matena 9f06dbd615 Added a mention of ASAN in the wiki 2019-03-20 15:19:27 +01:00
Lukas Matena 8466c55b78 SLA gizmo - points are added on leftdown event, not leftup as before 2019-03-20 14:04:59 +01:00
Lukas Matena df01af975a SLA gizmo now forces objects to use their normal color (not SELECTED_COLOR) 2019-03-20 14:04:20 +01:00
Lukas Matena 2728e45646 Renamed function mouse_event to gizmo_event 2019-03-20 13:44:34 +01:00
Lukas Matena 4ceba39d99 Decreased number of polygons on the SLA support point marks for faster rendering 2019-03-20 10:13:16 +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
Lukas Matena 5f81328aa4 Fixed a case when the SLA gizmo did not calculate igl mesh and aabb tree even though it should 2019-03-15 18:40:49 +01:00
Lukas Matena ef939905b1 Another fix of the gizmo grabber color picking 2019-03-15 11:04:08 +01:00
Lukas Matena 32c9e8b168 A small fix of the gizmo grabbers picking 2019-03-15 10:15:23 +01:00
Lukas Matena 2750a8113d SLA gizmo now shows arrows pointing at the points so they are easy to see 2019-03-13 15:38:27 +01:00
Lukas Matena 03beb1870b SLA gizmo - combo replaced by slider, autogeneration uses config value for head_diameter 2019-03-13 12:02:33 +01:00
Lukas Matena 63b65bb3c8 Wipe tower brim lines are now printed with overlaps as they should be 2019-03-13 10:46:50 +01:00
Lukas Matena cbe96906eb SLA support points are correctly appointed as user-modified
SLA gizmo point cache is reloaded when appropriate
2019-03-11 15:05:36 +01:00
Lukas Matena e4dca04a4b Added wxBusyCursor on AABB tree calculation for SLA gizmo 2019-03-08 20:34:22 +01:00
Lukas Matena 8b74cc48eb Prevented instance move event when SLA gizmo is active so right panel is not needlessly updated 2019-03-08 09:26:42 +01:00
Lukas Matena 79fbf08409 An attempt to fix sla gizmo imgui dialog scaling on osx and hidpi screens 2019-03-06 10:11:02 +01:00
Lukas Matena f147f192b4 Disabled object context menu when the SLA gizmo is active 2019-03-06 10:10:10 +01:00
Lukas Matena 2fe542e0fc Merge branch 'lm_sla_gizmo_render' 2019-03-04 14:52:21 +01:00
Lukas Matena 02c68ed895 Prevented the sla gizmo dialog to overlap the bottom toolbar 2019-03-04 14:52:08 +01:00
Lukas Matena 9c5194c89b An attempt to fix an OSX crash when manipulating the ImGui sliders 2019-03-04 12:47:02 +01:00
Lukas Matena ee4496f59f An attempt to fix an unwanted cancellation caused by improper frontend-backend data synchronization (SLA support points) 2019-03-01 16:17:23 +01:00
Lukas Matena b45c80b8db Fixed the 'remove all points' button in sla gizmo (was only working in editing mode) 2019-03-01 15:03:58 +01:00
Lukas Matena 5846af256a SLA supports gizmo can change object config options 2019-03-01 13:24:24 +01:00
Lukas Matena 4eb4e40746 SLA gizmo keeps track of current status of the points, enables the user to erase all points 2019-02-27 16:23:10 +01:00
Lukas Matena bb533e386a Fixed shortcut for [M]ove gizmo (accidentally overridden by a shortcut for [M]anual changes of SLA support points) 2019-02-27 10:12:54 +01:00
Lukas Matena bb3819fd18 SLA support gizmo hotkeys added (A,M,Esc,Enter) 2019-02-25 13:04:05 +01:00
Lukas Matena 5292f16f32 SLA gizmo - clicking on object does not add new points if any point is selected
Remove selected points button is greyed out unless something is selected
2019-02-20 15:42:03 +01:00
Lukas Matena b0d78c3fb2 Place on bed fix (incorrect usage of sla z-shift) 2019-02-20 15:15:00 +01:00
Lukas Matena 3aa97a6f3f Merge branch 'lm_sla_supports_auto2' 2019-02-20 13:17:29 +01:00
Lukas Matena 574cb53bff Revert "Fixed a missing include problem in SLASupportAuto.hpp"
This is already solved in master branch by including the header

This reverts commit b7465e935e.
2019-02-20 13:16:09 +01:00
Lukas Matena b7465e935e Fixed a missing include problem in SLASupportAuto.hpp 2019-02-20 12:28:57 +01:00
Lukas Matena 2759c87e5b WarningTexture class in GLCanvas3D modified so it can be used more universally
Added a warning to notify that some objects are not rendered with SLA gizmo active
2019-02-20 12:09:45 +01:00
Lukas Matena 4558910a84 SLA gizmo can be deselected by clicking in canvas area (unless in editing mode) 2019-02-20 09:59:59 +01:00
Lukas Matena eb0fd03861 SLA supports - added parameters for the automatic generation (relative density measure and minimal distance of the points) 2019-02-19 16:34:52 +01:00
Lukas Matena d7e14d0792 Ensuring that GLCanvas gets focus when it should (Linux only fix) 2019-02-19 15:54:43 +01:00
Lukas Matena 1bb0af1588 SLA gizmo asks about saving changes, right button click removes points 2019-02-19 13:47:28 +01:00
Lukas Matena 3c7912186e SLA gizmo cannot be activated for objects outside the bed 2019-02-19 10:47:15 +01:00
Lukas Matena 023b788777 Merge branch 'master' into lm_sla_supports_auto2 2019-02-19 10:15:16 +01:00
Lukas Matena cb4763bb32 SLA gizmo - combobox items are now rendered immediately on mouse click, not after next mouse move 2019-02-18 14:56:19 +01:00
Lukas Matena c63bdccb4b SLA gizmo selection rectangle now checks for obscured points 2019-02-18 14:07:45 +01:00
Lukas Matena dbfcb8b76e Small formal fixes on the new 3d grid algorithm 2019-02-18 12:47:15 +01:00
Lukas Matena 5966dcb78e SLA gizmo - fixed support points rendering (depth is now correctly accounted for) 2019-02-18 11:59:47 +01:00
Lukas Matena d1529296c6 Added a wxMessageDialog as an alternative to the ImGui modal, in case it turns out not good enough 2019-02-11 17:09:15 +01:00
Lukas Matena ac8f9ab3dc SLA gizmo improvements
- point can be selected
- selection can be deleted, head diameter changed
- dragging of objects is not allowed with the gizmo being on
- added a modal dialog when automatic support generator is triggered
2019-02-11 16:29:03 +01:00
Lukas Matena 0453caf266 SLA gizmo - shift-up and ctrl+a event passing 2019-02-11 08:21:37 +01:00
Lukas Matena fd4054be7e First steps on the rectangular selection for the SLA gizmo 2019-02-09 07:19:01 +01:00
Lukas Matena 4357c80793 SLA gizmo - fixed hiding of objects and instances 2019-02-06 17:27:02 +01:00
Lukas Matena 9fc75d7b34 SLA support points (better backend->frontend synchronization and more)
- backend to frontend data synchronization to inform the gizmo that new points have been generated
- fixed the inadvertent cancellation of background processing caused by the SLA gizmo touching frontend data during the process
- inactive instances of the object are hidden when the SLA gizmo is active
- fix of imgui combobox rendering
2019-02-06 15:16:25 +01:00
Lukas Matena 906e66ea80 Tiny fix of previous commit 2019-02-06 11:09:00 +01:00
Lukas Matena 9dff44a8ad SLA support gizmo does not use Grabber class anymore 2019-02-04 12:33:59 +01:00
Lukas Matena fab3025107 SLA support points - minor adjustments 2019-02-04 10:56:49 +01:00
Lukas Matena 24a0fdb844 SLA support points generator now uses precalculated aabb tree 2019-02-04 09:50:25 +01:00
Lukas Matena d32d0a7636 Merge branch 'master' into lm_sla_supports_auto2 2019-02-04 08:41:00 +01:00
Lukas Matena d154e75ad7 Merge branch 'master' into lm_sla_supports_auto2 2019-02-04 08:40:20 +01:00
Lukas Matena f568f93f08 More SLA support points improvements
- unselected objects are hidden when SLA gizmo is active
- support volumes are hidden when editing mode is active
- 3mf support points format versioning
2019-02-01 23:09:02 +01:00
Lukas Matena 21026ec9a8 SLA support points improvements
- semi-intelligent algorithm to place support points
- enhanced ImGui dialog with editing/non-editing mode
- support points can have different head diameter (only implemented in GUI so far)
- autogenerated points supporting emerging islands are annotated and the info is kept
2019-02-01 07:13:08 +01:00
Lukas Matena ddcb2b1c23 Fixed a crash caused by double-free on application close event (Linux) 2019-01-28 12:12:26 +01:00