Commit Graph

605 Commits

Author SHA1 Message Date
Enrico Turri
ba4f0445c3 Fixed rendering of sla cap slices after deleting object 2019-04-02 14:43:38 +02:00
Enrico Turri
f147da1e5d Fixed conflicts after cherry-picking 5c89135 2019-04-02 14:32:12 +02:00
bubnikv
dc64b4d971 Merge branch 'master' of https://github.com/prusa3d/Slic3r 2019-04-02 13:54:46 +02:00
bubnikv
086f11df98 Handling of left hand oriented coordinate systems:
is_left_handed() method on transformations and volumes
rendering of GLVolumes in left handed coordinate systems by glFrontFace(GL_CW);
SLA slicing on left hand oriented instances by flipping the mesh for SLAPrintObject in X.
rendering of the SLA cutting plane in left handed systems
resetting the SLA clipping planes on 3D preview invalidation
2019-04-02 13:47:49 +02:00
Vojtech Kral
c542413962 imgui: More refactoring, cut gizmo window positioning 2019-04-02 10:36:24 +02:00
Vojtech Kral
88cc93cdc9 imgui: Refactor font size, font initialization 2019-04-01 14:28:39 +02:00
Enrico Turri
83aaa471cf Fixed conflicts after merge with master 2019-04-01 14:21:55 +02:00
tamasmeszaros
50942e9382 Merge branch 'tm_reuse_unified' 2019-04-01 12:24:50 +02:00
Enrico Turri
7cfcf8fb9a Merge branch 'master' of https://github.com/prusa3d/Slic3r into et_canvas_gui_refactoring 2019-04-01 11:40:08 +02:00
bubnikv
62539bc35b Fix of No preview of position in variable layer editing UI at retina resolution #2050 2019-04-01 11:08:26 +02:00
Enrico Turri
d87b478d60 Camera refactoring
1) All camera related OpenGL calls moved into class

2) The Camera class now stores the view matrix, the projection matrix and the viewport

3) The Camera class now exposes methods to get the camera orientation vectors, the camera position, the view matrix, the projection matrix and the viewport

4) All the code operating on the camera or requiring camera data has been modified to use the new methods
2019-04-01 10:00:10 +02:00
tamasmeszaros
725f115756 Merging with master for having minz png compression.
Much greater performance boost from better compression algorithm than that from the merged polygons.
2019-03-29 15:21:46 +01:00
Enrico Turri
af3a32b8a0 Merge branch 'master' of https://github.com/prusa3d/Slic3r into et_canvas_gui_refactoring 2019-03-28 09:30:23 +01:00
Enrico Turri
98a848d239 Layers editing initialized only for 3D view and not for g-code preview 2019-03-28 09:12:32 +01:00
Enrico Turri
a4f404a6a4 Selection enabled only for 3D view and not for g-code preview 2019-03-28 08:44:46 +01:00
Enrico Turri
8459410e3c Fixed conflicts after merge with master 2019-03-27 14:57:05 +01:00
Enrico Turri
d795f07e7b Added glsafe() around OpenGL calls where missing 2019-03-27 14:42:09 +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
tamasmeszaros
bc74761513 Integrating new step, removing old and unused steps. 2019-03-27 10:59:29 +01:00
Enrico Turri
3cd6db2278 Fixed selection lost when Place on Face gizmo is active and user click on another object 2019-03-27 09:06:53 +01:00
Enrico Turri
000542f48d Merge branch 'master' of https://github.com/prusa3d/Slic3r into et_canvas_gui_refactoring 2019-03-27 08:33:48 +01:00
tamasmeszaros
4d8800bc8a Fixing broken statistics. 2019-03-26 16:45:04 +01:00
Enrico Turri
fee0a6b6b5 void GLCanvas3D::update_gizmos_data() moved into void GLGizmosManager::update_data(GLCanvas3D& canvas) 2019-03-26 15:55:47 +01:00
Enrico Turri
47c39f51e5 Handling of gizmos related key events moved into new method GLGizmosManager::on_key() 2019-03-26 14:38:30 +01:00
Enrico Turri
52f11a6f0d Merge branch 'master' of https://github.com/prusa3d/Slic3r into et_canvas_gui_refactoring 2019-03-26 14:08:46 +01:00
Enrico Turri
d18208458b Handling of gizmos related char events moved into new method GLGizmosManager::on_char() 2019-03-26 14:08:02 +01:00
Enrico Turri
c1d74d2943 Code cleanup 2019-03-26 12:39:40 +01:00
Enrico Turri
eafdcb04ba Handling of gizmos related mouse events moved into GLGizmosManager::on_mouse() 2019-03-26 12:30:17 +01:00
tamasmeszaros
a49643ebdb Merging with master, solving conflicts. 2019-03-26 11:13:28 +01:00
tamasmeszaros
57e28b53f2 Further refactor and simplification of slice index and print data. 2019-03-26 10:57:45 +01:00
bubnikv
82321c7aee Merge branch 'master' of https://github.com/prusa3d/Slic3r 2019-03-26 10:39:08 +01:00
bubnikv
e0e1e2b682 Improved SLA layer view: Low layer shall be rendered from the slice above,
triangulated slices are shifted slightly away from the clipping planes.

FDM: Ported a "(bridged)" G-code comment from upstream.
2019-03-26 10:38:50 +01:00
Enrico Turri
a09197879d Code cleanup 2019-03-26 09:10:35 +01:00
Enrico Turri
3818bfa19a 1st installment of gizmos refactoring
1) GLCanvas3D::Gizmos moved into a standalone class GLGizmosManager

2) GLGizmosManager handles mouse events by calling its on_mouse method (wip)
2019-03-26 09:01:04 +01:00
tamasmeszaros
d73d9309f1 Refactoring and commenting slice index solution. 2019-03-25 19:02:05 +01:00
Lukas Matena
3f7f8f978e Fix of sla gizmo (it sometimes showed supports for hidden objects) 2019-03-24 13:35:09 +01:00
bubnikv
2fe27a29e0 Fixed the SLA layer preview. 2019-03-22 21:26:58 +01:00
tamasmeszaros
4ece50e3db Merge branch 'master' into tm_slice_index 2019-03-22 15:31:58 +01:00
tamasmeszaros
d165dbb498 Refactoring changes to the slice index. 2019-03-22 15:31:38 +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
tamasmeszaros
0ffc0c3a84 Merge branch 'master' into tm_slice_index 2019-03-21 15:17:01 +01:00
tamasmeszaros
24a5dd4235 FIx for broken slice preview 2019-03-21 15:16:33 +01:00
bubnikv
562343cd2a Localization fix of the warning texts in the 3D scene.
Improved anti-aliasing of the warning texts in the 3D scene
and the G-code legend. A ClearType rendering has been suppressed
by rendering of the text into a red channel only.
2019-03-21 14:33:55 +01:00
tamasmeszaros
d4dde12d0d Slic3r compiles with the new slice index interface. 2019-03-21 12:25:33 +01:00
Enrico Turri
3a923b7121 Fixed conflicts after merge with master 2019-03-20 16:09:14 +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
Enrico Turri
d23824af97 GLCanvas3D::Gizmos as a standalone class (GLGizmosManager) 2019-03-20 13:51:25 +01:00
Lukas Matena
2728e45646 Renamed function mouse_event to gizmo_event 2019-03-20 13:44:34 +01:00
Enrico Turri
df250039df Tech ENABLE_CANVAS_GUI_REFACTORING set as default 2019-03-20 09:33:30 +01:00
Enrico Turri
80c1a8d8e4 GLCanvas3D::Selection as a standalone class 2019-03-19 13:30:21 +01:00
Enrico Turri
5bb89f4da2 Merge branch 'master' of https://github.com/prusa3d/Slic3r into et_canvas_gui_refactoring 2019-03-19 10:48:51 +01:00
Enrico Turri
262f187699 Fixed visual hints for position in case of single volume selection 2019-03-19 10:09:54 +01:00
Enrico Turri
334b5a82a6 Tech ENABLE_MOVE_MIN_THRESHOLD set as default 2019-03-19 10:04:19 +01:00
Enrico Turri
42939e76a3 Code cleanup 2019-03-19 09:21:27 +01:00
Enrico Turri
8b85e09062 Merge branch 'master' of https://github.com/prusa3d/Slic3r into et_canvas_gui_refactoring 2019-03-18 12:07:32 +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
Enrico Turri
e97dcbb660 Merge branch 'master' of https://github.com/prusa3d/Slic3r into et_canvas_gui_refactoring 2019-03-18 11:08:02 +01:00
Enrico Turri
feb2041c7b Context menu in 3D scene shown on right mouse up event 2019-03-18 10:47:01 +01:00
Enrico Turri
710bb66dfc Fixed assert in imgui when starting Slic3r for the 1st time (no config data saved on disk) 2019-03-18 10:10:11 +01:00
Enrico Turri
7554c9862d Merge branch 'master' of https://github.com/prusa3d/Slic3r into et_canvas_gui_refactoring 2019-03-15 13:24:58 +01:00
Enrico Turri
bc3036d777 Follow-up to previous commits on gizmo grabbers picking (use of centralized static constant for ids and added comments) 2019-03-15 12:07:25 +01:00
Lukas Matena
ef939905b1 Another fix of the gizmo grabber color picking 2019-03-15 11:04:08 +01:00
Enrico Turri
6ab0a526b3 Merge branch 'master' of https://github.com/prusa3d/Slic3r into et_canvas_gui_refactoring 2019-03-15 09:15:11 +01:00
Enrico Turri
5b01eb3004 2nd fix for x position of gizmos' imgui dialogs 2019-03-15 09:13:15 +01:00
Enrico Turri
5018089351 Toolbar refactoring
1) toolbar items define 3 callback functions for setting the visibility, setting the enabling state and defining their action which are set while adding a new item to the toolbar

2) the toolbar takes care to update all its items visibility and enabled states through a new update method to be called by the parent idle event handler

3) the toolbar handles mouse events by calling its on_mouse method
2019-03-14 13:54:05 +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
bubnikv
1da97c9415 Merge remote-tracking branch 'remotes/origin/ys_buttons' 2019-03-12 09:01:17 +01:00
Enrico Turri
b89e95aea7 Fixed rotation of multiple instances selection 2019-03-08 14:52:32 +01:00
Enrico Turri
172daa8989 Top toolbar icon size set to 40px 2019-03-08 14:35:33 +01:00
Enrico Turri
862700ab46 Added change removed by mistale in 02163f7f9648b81ad1dc59a4ad6c1a5c55c02a50 2019-03-08 12:04:06 +01:00
Enrico Turri
513256649e Final version of fix to prevent showing old framebuffer when switching between views on Mac 2019-03-08 12:04:01 +01:00
Enrico Turri
628a868cfd 2nd attempt to prevent showing old framebuffer when switching between views on Mac 2019-03-08 12:03:49 +01:00
Enrico Turri
fc70b73f45 Refactoring - Shared members of GLCanvas3D as references instead of pointers 2019-03-08 12:03:37 +01:00
Enrico Turri
b5217918cf Code cleanup 2019-03-08 12:03:31 +01:00
Enrico Turri
72239732e4 Fixed build on Mac 2019-03-08 12:03:25 +01:00
Enrico Turri
aa4c44dbea Use unique camera shared by 3d view and preview (experimental) 2019-03-08 12:03:17 +01:00
Enrico Turri
af72d781ad Fixed GLCanvas3D::Selection::is_single_full_instance() 2019-03-08 10:36:12 +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
YuSanka
aa0737fa5e Fixed assert after try to add Part to Object with several Instances from the ObjectList.
+ Fixed selection on the 3DScene before a context menu showing
2019-03-07 10:08:21 +01:00
Enrico Turri
2a6de99f06 Fixed rotation of multiple volumes selection 2019-03-06 15:22:17 +01:00
Enrico Turri
2c99fd35d3 Force canvas resize when switching between views 2019-03-06 13:37:20 +01:00
Enrico Turri
de06db7989 Allow dragging of objects also along world Z axis in side views 2019-03-06 12:09:20 +01:00
Enrico Turri
1bb5630eaa Fixed gizmos' imgui dialog x position 2019-03-06 10:47:48 +01:00
Lukas Matena
f147f192b4 Disabled object context menu when the SLA gizmo is active 2019-03-06 10:10:10 +01:00
Enrico Turri
925378ba90 Added background to legend texture 2019-03-05 13:57:41 +01:00
Enrico Turri
822bd92bd1 Fixed conflicts after merge with master 2019-03-05 08:27:21 +01:00
Lukas Matena
02c68ed895 Prevented the sla gizmo dialog to overlap the bottom toolbar 2019-03-04 14:52:08 +01:00
Enrico Turri
319a48f42d Added svg icons for view toolbar and gismos 2019-03-04 14:21:52 +01:00
Enrico Turri
5ddf45806b Merge branch 'master' of https://github.com/prusa3d/Slic3r into svg_icons 2019-03-04 13:47:34 +01:00
Enrico Turri
06c2b4bdf3 Allow to drag object's subparts once selected using the sidebar table 2019-03-04 11:00:52 +01:00
Enrico Turri
3c7ec5f7c6 Merge branch 'master' of https://github.com/prusa3d/Slic3r into svg_icons 2019-03-04 08:33:52 +01:00
bubnikv
570bc63e58 Merge branch 'master' of https://github.com/prusa3d/Slic3r 2019-03-01 15:36:01 +01:00
bubnikv
0ec450f3d7 Fix of instance rotations from the side panel
in regard to instance synchronization.
2019-03-01 15:35:48 +01:00
Enrico Turri
3a1dcedaff Prevent camera rotation when clicking and dragging on toolbars 2019-03-01 12:23:33 +01:00
YuSanka
247b70395b Merge remote-tracking branch 'origin/master' into ys_buttons 2019-03-01 12:13:33 +01:00
YuSanka
a123099f80 Implemented another behavior of the "Slice Now" / "Export/Send G-code" buttons (SPE-831) 2019-03-01 11:00:34 +01:00
Enrico Turri
e03199d989 Allow selection of subparts only from sidebar table 2019-03-01 10:40:10 +01:00
bubnikv
d009be7609 Fixed rotation of single instance -> it works now with absolute values.
Added Absolute / relative, World / Local, Rigid body / independent
modifier parameter to the object / group rotation.
2019-03-01 10:20:12 +01:00
Enrico Turri
e5a2c0a8c8 ENABLE_MODE_AWARE_TOOLBAR_ITEMS set as default 2019-02-28 12:21:36 +01:00
Enrico Turri
2d77f89360 Merge branch 'master' of https://github.com/prusa3d/Slic3r into svg_icons 2019-02-27 10:42:30 +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
Enrico Turri
8cc1486cab Fixed uv in gizmos overlay 2019-02-27 10:03:58 +01:00
Enrico Turri
e1eff8fa5c Merge branch 'master' of https://github.com/prusa3d/Slic3r into svg_icons 2019-02-26 12:56:43 +01:00
Enrico Turri
a8610f990e Automatic generation of variants of icons for toolbars and gizmos 2019-02-26 12:56:13 +01:00
Enrico Turri
2f205dd77b Fix of #1853 (Translation of volumes in side view) 2019-02-26 12:31:49 +01:00
bubnikv
f3b33eac50 Yet another fix of keyboard / mouse focus on the 3D scene. 2019-02-26 11:50:45 +01:00
Enrico Turri
f47fe861ac Allow non-squared textures for toolbars and gizmo icons 2019-02-26 10:40:00 +01:00
Enrico Turri
0f683a6a1e 1st installment of svg icons for toolbars and gizmos 2019-02-26 09:56:23 +01:00
bubnikv
feef5608b9 Workaround for mouse events sent out of order
(mouse button down being sent before mouse enter)
2019-02-25 17:09:44 +01:00
Lukas Matena
bb3819fd18 SLA support gizmo hotkeys added (A,M,Esc,Enter) 2019-02-25 13:04:05 +01:00
Enrico Turri
fab87ff1d9 Merge branch 'master' of https://github.com/prusa3d/Slic3r into svg_icons 2019-02-25 09:32:02 +01:00
bubnikv
7b65803cb3 Fix of SPE-832
Workaround for a wxWidget bug, where the mouse down event comes
before mouse enter event after a pop-up menu is closed.
2019-02-22 16:16:04 +01:00
Enrico Turri
03022ce124 Code cleanup 2019-02-22 12:06:56 +01:00
Enrico Turri
a36896e4c9 Fixed conflicts after merge with master 2019-02-22 10:18:15 +01:00
Enrico Turri
aa9994fa35 Gizmos overlay using a single png texture 2019-02-22 10:01:34 +01:00
Enrico Turri
eb0b3aea09 Fixed conflicts after merge with master 2019-02-22 09:11:49 +01:00
Vojtech Kral
051ca410f6 More input handling fixes 2019-02-21 19:00:50 +01:00
Vojtech Kral
bf699462c3 imgui: Attempt to fix Tab key 2019-02-21 13:17:26 +01:00
Vojtech Kral
1b30ac1f89 Fix Preview legend scaling 2019-02-21 12:20:06 +01:00
Enrico Turri
2eb0b6d1b4 Merge branch 'master' of https://github.com/prusa3d/Slic3r into et_multivolume_models 2019-02-21 08:20:44 +01:00
Vojtech Kral
478032ad28 imgui: Fix char input handling 2019-02-20 16:55:00 +01:00
bubnikv
cb8677b310 Merge branch 'master' of https://github.com/Prusa3d/Slic3r 2019-02-20 16:20:52 +01:00
bubnikv
c55629259a Merge remote-tracking branch 'origin/ys_hdpi' 2019-02-20 16:20:30 +01:00
Vojtech Kral
1045b43d4f imgui: Input fixes 2019-02-20 16:12:41 +01:00
Vojtech Kral
2de814d478 Imgui: Implement keyboard input, fix #1797 2019-02-20 16:12:41 +01:00
Enrico Turri
11fc849b1a Printbed textures generated from svg files 2019-02-20 15:23:23 +01:00
Enrico Turri
e2731416bf Merge branch 'master' of https://github.com/prusa3d/Slic3r into et_multivolume_models 2019-02-20 13:50:54 +01:00
Enrico Turri
cb1ef36ceb ENABLE_UNIQUE_BED set as default 2019-02-20 13:50:35 +01:00
Enrico Turri
7443868e87 Merge branch 'master' of https://github.com/prusa3d/Slic3r into et_multivolume_models 2019-02-20 13:16:39 +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
Enrico Turri
75df722fee Bed and Axes classes moved from GLCanva3d to Plater to have a unique instance of them shared by all views 2019-02-19 15:15:27 +01:00
Lukas Matena
1bb0af1588 SLA gizmo asks about saving changes, right button click removes points 2019-02-19 13:47:28 +01:00
Enrico Turri
d81b957968 Tech ENABLE_REWORKED_BED_SHAPE_CHANGE set as default 2019-02-19 10:28:32 +01:00
Lukas Matena
023b788777 Merge branch 'master' into lm_sla_supports_auto2 2019-02-19 10:15:16 +01:00
Enrico Turri
e861f5a243 Tech ENABLE_PRINT_BED_MODELS set as default 2019-02-19 10:07:37 +01:00
Enrico Turri
644794233f Code cleanup 2019-02-18 15:41:12 +01:00
Enrico Turri
8635756b02 Added debug output to investigate further #1788 2019-02-18 15:41:04 +01:00
Enrico Turri
362f6a069c 2nd attempt to fix #1788 2019-02-18 15:40:58 +01:00
Enrico Turri
022b573bae 1st attempt to fix #1788 2019-02-18 15:40:51 +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
bubnikv
09cce95181 Merge branch 'lm_sla_supports_auto2' of https://github.com/prusa3d/Slic3r into lm_sla_supports_auto2 2019-02-17 13:09:16 +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
YuSanka
f0cee79170 Fix of #1768 2019-02-08 17:36:38 +01:00
Enrico Turri
7662fa9a5b Temporary disable transparent bed and higher resolution bed textures 2019-02-08 16:45:03 +01:00
Enrico Turri
29137d1b3c Fixed z offset of printbed models 2019-02-08 10:19:07 +01:00