Commit Graph

387 Commits

Author SHA1 Message Date
Enrico Turri
3d450df680 ENABLE_THUMBNAIL_GENERATOR -> Transparent background for thumbnails saved into .3mf 2019-11-04 11:59:23 +01:00
YuSanka
674c6ce1c5 Implemented coloration of multi-extruder print with color changes for separated extruder. 2019-11-03 19:33:02 +01:00
Enrico Turri
636e446da1 ENABLE_THUMBNAIL_GENERATOR -> Changes to zoom factor and centering algorithm when rendering thumbnails 2019-10-31 16:40:38 +01:00
Enrico Turri
3ff3eed2b1 ENABLE_THUMBNAIL_GENERATOR -> Use off-screen framebuffer to render the thumbnail on graphic cards supporting it 2019-10-29 10:27:51 +01:00
Enrico Turri
296d79abf7 ENABLE_THUMBNAIL_GENERATOR -> Fixed thumbnail generation for SLA and 3mf 2019-10-24 15:56:10 +02:00
Enrico Turri
29fd0ef7c6 ENABLE_THUMBNAIL_GENERATOR -> Refactoring to simplify code 2019-10-24 12:09:09 +02:00
Enrico Turri
6d5572ae47 ENABLE_THUMBNAIL_GENERATOR -> Code cleanup 2019-10-24 10:25:40 +02:00
YuSanka
2a5cf689a4 Preview mode: Implemented a show of the part printed by selected extruder 2019-10-24 08:43:27 +02:00
Enrico Turri
32a42f2808 Added tech ENABLE_THUMBNAIL_GENERATOR -> 1st installment of generation of thumbnail from plater (WIP) 2019-10-22 16:02:31 +02:00
Enrico Turri
e6403a74ef ENABLE_3DCONNEXION_DEVICES tech set as default 2019-10-11 15:51:36 +02:00
Enrico Turri
589e003de0 Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer into et_3dconnexion 2019-10-09 13:41:09 +02:00
Enrico Turri
a6a7303e25 Fixed context menu showing up when user right clicks on 3D scene and release the mouse button after dragging over the objects list 2019-10-09 13:39:24 +02:00
Enrico Turri
587effbedf ENABLE_3DCONNEXION_DEVICES -> Refactored Mouse3DController to be unaware of current active GLCanvas3D 2019-10-03 11:38:31 +02:00
Enrico Turri
f958cfd2ff ENABLE_3DCONNEXION_DEVICES - 1st installment of support for 3Dconnexion devices
Implemented using hidapi library (https://github.com/libusb/hidapi) and https://github.com/koenieee/CrossplatformSpacemouseDriver/tree/master/SpaceMouseDriver as reference

Unsolved issues:

- When manipulating the SpaceNavigator wxWidgets generates a mouse wheel event that needs to be filtered out

- wxWidgets does not detect devices being connected/disconnected to the pc

- Current state forces a continuous rendering

- Current state misses dependence on camera zoom

- Non intuitive movement limits

- Translation and rotation speed factors are hardcoded

- Number of device buttons hardcoded
2019-09-27 14:52:19 +02:00
Enrico Turri
d66bf7e1e1 Follow-up of 8aaff08355 -> Do not show the new context menu when the user pans the scene + cleanup 2019-09-20 11:19:06 +02:00
YuSanka
8aaff08355 Added Possibility to create "shape" as an independent object from 3dScene,
using right click on empty place
2019-09-20 09:57:27 +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
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
Enrico Turri
9cf3793aac Merge branch 'dev' of https://github.com/prusa3d/PrusaSlicer into et_reload_from_disk 2019-09-06 16:06:37 +02:00
Lukas Matena
a985a2720f Fixed some more warnings, moved function to get ExtrusionRole name into ExtrusionEntity.hpp
So it can be called from wherever it may be needed
2019-09-06 15:55:07 +02:00
Enrico Turri
fe07bde385 Do not render intermediate states while reload from disk action is taking place 2019-09-06 13:49:15 +02:00
Enrico Turri
6bbc97f24d Removed a bunch of compile warnings 2019-09-04 09:47:00 +02:00
Enrico Turri
f1f1b515cd Fixed update of both canvas when compressed bed textures have been completely sent to gpu 2019-08-30 14:10:59 +02:00
bubnikv
80490550b5 Optimization of the tool path preview generation algorithm:
1) Replaced linear search with logarithmic search.
2) Templated the travel path generation, replaced 3 functions with one.
2019-08-26 15:52:56 +02:00
bubnikv
85d9a16563 Fixed a bug, where the GL context was not being activated with _set_current()
as _set_current() tested for visibility of the window on the screen.

Improved memory management by:
1) Allocating small (around 3MB) vertex buffers to be sent to the GPU.
2) Passing the small vertex buffers to the GPU as quickly as possible.

A bit of copy / paste refactoring into common functions.
2019-08-26 11:12:48 +02:00
Enrico Turri
58473f84ee Check for existence of gcode toolpaths that can be exported to obj file 2019-08-20 11:33:58 +02:00
Enrico Turri
1f6aab312b 1st installment of export of gcode toolpaths to obj file 2019-08-20 09:01:09 +02:00
YuSanka
dac301e3b6 Update volumes on 3DScene, after adding of part for unprintable object 2019-08-16 13:14:51 +02:00
bubnikv
39b07e7b94 Partial revert of 07a3072622
It fixes an issue where the objects out of print bed are shown
in the print path preview in SLA mode.
2019-08-08 18:26:41 +02:00
YuSanka
4152a5df43 Implemented update on canvas of a printable state for new volumes added from ObjectList 2019-08-05 14:57:30 +02:00
Enrico Turri
1cdc3e0493 Workaround for gizmos being clipped by the perspective camera 2019-08-02 15:30:37 +02:00
Enrico Turri
77857f7292 Refactoring into rendering pipeline 2019-07-26 09:45:22 +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
c1dee0e87d Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer into et_custom_bed 2019-07-22 11:26:02 +02:00
tamasmeszaros
dcb073d4fd Merge branch 'tm_arrange_selection' 2019-07-22 11:14:34 +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
b60b44ed5e Added additional tooltip to toolbar items and use it for undo/redo items 2019-07-20 14:03:34 +02:00
tamasmeszaros
8d66b51e8c Merge branch 'master' into tm_arrange_selection 2019-07-19 18:17:58 +02:00
bubnikv
07a3072622 Simplified loading of the SLA support structures into the scene.
Fixed referesh of SLA support structures after Undo / Redo
and when moving an object outside / inside the build volume.
2019-07-19 17:14:37 +02:00
Enrico Turri
81d3669a25 Undo/Redo buttons moved into their own toolbar 2019-07-19 15:36:55 +02:00
Enrico Turri
84d61e28fd Tech ENABLE_TEXTURES_FROM_SVG set as default 2019-07-19 09:52:01 +02:00
tamasmeszaros
a695dec51a Merge branch 'master' into tm_arrange_selection 2019-07-17 17:25:31 +02:00
tamasmeszaros
2728f41123 Solved issue with virtual bed management.
libnest2d: Fix for unclosed polygons after merge.
2019-07-17 13:32:31 +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
tamasmeszaros
44801f4429 Priority for wipe tower, Increased safety distance from bed edges.
* WipeTowerInfo class extended in plater (WipeTower) instead of GLCanvas3D
* Bed origin support in ModelInstance and WipeTower
2019-07-16 18:33:42 +02:00
tamasmeszaros
1b0e192046 Arrange cache in ModeInstance and logical bed remembered. 2019-07-15 17:30:44 +02:00
bubnikv
ab7ecc1819 Merge remote-tracking branch 'remotes/origin/vb_undo_redo' 2019-07-15 11:34:18 +02:00
tamasmeszaros
df7bb94daf Not handling logical beds in arrange() 2019-07-12 21:17:11 +02:00
Enrico Turri
cc70c8dff9 Tech ENABLE_SVG_ICONS set as default 2019-07-12 10:13:35 +02:00
Enrico Turri
dbf0eacfa7 Deactivate undo/redo toolbar items when leaving the 3D scene or clicking into it 2019-07-11 07:46:40 +02:00
Enrico Turri
1b5ab100bd GLToolbar::m_imgui_hovered_pos replaced with GLCanvas3D::m_imgui_undo_redo_hovered_pos 2019-07-10 14:08:14 +02:00
YuSanka
3dd1bc753c Merge remote-tracking branch 'origin/vb_undo_redo' into ys_undo_redo 2019-07-09 19:41:37 +02:00
YuSanka
1347e655c2 Next improvements of an undo/redo from a toolbar 2019-07-09 19:39:36 +02:00
Enrico Turri
d4914441f3 Modified logic to add snapshots to undo/redo stack using GLCanvas::do_xxxxxx() methods 2019-07-09 10:18:57 +02:00
Enrico Turri
9ba5568539 Fixed conflicts after merge with master 2019-07-08 09:23:37 +02:00
bubnikv
c7cc760067 Merge remote-tracking branch 'origin/master' into vb_undo_redo 2019-07-04 20:22:15 +02:00
bubnikv
5a2ace1a6e WIP Undo / Redo: First Undo in the history of PrusaSlicer! 2019-07-04 10:45:41 +02:00
tamasmeszaros
e81f8a5fd9 WIP still with arrange return value. 2019-07-03 19:24:41 +02:00
tamasmeszaros
253ec07cb2 Still WIP 2019-07-01 18:22:07 +02:00
Enrico Turri
4269c8b23c Removed GLVolume non-VBO rendering 2019-07-01 12:28:16 +02:00
tamasmeszaros
299e4f74c7 Arranging with new structure. 2019-06-28 17:03:50 +02:00
tamasmeszaros
19e6bf58dd WIP on structuring arrange inputs 2019-06-27 21:13:44 +02:00
YuSanka
dd1fb286c3 Merge remote-tracking branch 'origin/master' into ys_new_features 2019-06-27 14:01:50 +02:00
Enrico Turri
90d1ac2c8f Tech ENABLE_RENDER_PICKING_PASS extended so that user can switch between picking pass texture rendering and regular rendering by pressing [T] key 2019-06-27 11:25:04 +02:00
YuSanka
1525a864c5 Merge remote-tracking branch 'origin/master' into ys_new_features 2019-06-26 13:33:05 +02:00
YuSanka
104a289cfe Implemented interface for updating 3DScene after set a focus to some editor 2019-06-26 13:30:20 +02:00
Enrico Turri
3d755e1bbe Removed 'Use legacy OpenGL 1.1 rendering' option 2019-06-25 09:20:58 +02:00
Enrico Turri
5766e9e915 Fixed conflicts after merge with branch et_perpsective_camera 2019-06-24 11:08:42 +02:00
Enrico Turri
00b9a3ad32 ENABLE_COMPRESSED_TEXTURES set as default 2019-06-24 09:54:58 +02:00
Enrico Turri
96276394d1 Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer into et_experiments 2019-06-24 08:15:41 +02:00
Enrico Turri
6af69667a3 Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer into et_perspective_camera 2019-06-20 08:51:08 +02:00
Enrico Turri
da8179d9c7 More camera related functionalities moved from GLCanvas3D to Camera 2019-06-19 14:18:51 +02:00
Enrico Turri
28dd52d88b Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer into et_perspective_camera 2019-06-19 08:17:58 +02:00
YuSanka
917702f252 Fixed DoubleSlider manipulation from Preview scene 2019-06-18 11:40:26 +02:00
Enrico Turri
1a91add2e6 Tighter camera frustrum to reduce z-fighting 2019-06-14 10:38:09 +02:00
YuSanka
4712c5bbdf DoubleSlider manipulation from preview scene 2019-06-13 16:10:33 +02:00
Enrico Turri
836f2d777f Update 3D scene when all compressed texture data are sent to GPU 2019-06-05 10:07:59 +02:00
Enrico Turri
886da08f89 Texture compression set as an option 2019-05-28 12:53:16 +02:00
Enrico Turri
14c4469cbf Added Esc shortcut and menu item for command deselect all 2019-05-14 11:57:39 +02:00
Enrico Turri
f0da19446b Merge branch 'lm_arrange_wipe_tower' of https://github.com/prusa3d/Slic3r 2019-05-10 11:14:42 +02:00
Enrico Turri
efd429ea46 Detection of sla supports out of printbed in Preview and when sla gizmo is active 2019-05-10 10:43:39 +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
Enrico Turri
818f7ad647 Rectangle selection in 3D scene -> Fixed selection cleared when mouse left-up follows shift-up 2019-04-26 14:07:46 +02:00
Enrico Turri
6f273bef7f Merge branch 'master' of https://github.com/prusa3d/Slic3r into et_selection_rectangle 2019-04-26 13:38:34 +02:00
YuSanka
127a78d953 Fixed default font for legends in respect to the OS 2019-04-26 13:08:25 +02:00
Enrico Turri
a0640d2d24 Rectangle selection in 3D scene -> selection update 2019-04-25 12:31:55 +02:00
Enrico Turri
d2597482e0 Added imgui debug dialog for render statistics 2019-04-25 11:10:01 +02:00
Enrico Turri
11490dfb06 Rectangle selection in 3D scene -> hovering detection 2019-04-25 09:46:26 +02:00
Enrico Turri
ec2f319a3d Rectangle selection in 3D scene -> rendering 2019-04-25 09:10:03 +02:00
Enrico Turri
b557336fa6 Fixed conflicts after merge with master 2019-04-25 08:12:48 +02:00
YuSanka
065448e9e5 Big Refactoring: - deleted/renamed all _Prusa_ prefixes,
- cleaned code from commented parts
 - rescale() -> msw_rescale()
2019-04-25 01:45:00 +02:00
Enrico Turri
d79a2b8d2d GLCanvas3D -> added support for cursor change and change cursor when using SLA support gizmo rectangle selection 2019-04-24 15:43:52 +02:00
Enrico Turri
9710140948 int GLCanvas3D::m_hover_volume_id replaced with std::vector<int> GLCanvas3D::m_hover_volume_idxs 2019-04-24 15:07:28 +02:00
YuSanka
fc63a28481 Application Scaling for MSW:
+ Experiments with toolBars scaling
+ Rescaled warning and printing legends
2019-04-16 12:13:45 +02:00
bubnikv
80afb6da78 Fixed SLA clippling plane & picking. 2019-04-12 16:08:40 +02:00
Enrico Turri
7d15ee8fd9 Offset used to place newly added volumes and instances proportional to the bed max size 2019-04-12 15:31:33 +02:00
Enrico Turri
3e902ecfbd Fixed conflicts after merge with master 2019-04-12 08:41:59 +02:00
Enrico Turri
e61be7d260 Render picking pass renders volumes in the same order as the regular render pass 2019-04-10 11:20:09 +02:00