Commit Graph

337 Commits

Author SHA1 Message Date
Vojtech Kral
c29493a41b imgui: Refactor, use in cut gizmo 2018-11-26 11:16:39 +01:00
Enrico Turri
57e9d28a84 Added ImGuiWrapper 2018-11-26 10:57:12 +01:00
Enrico Turri
b94f19eaf4 Added method GLCanvas3D::is_dragging() 2018-11-26 10:41:16 +01:00
Enrico Turri
da0b9b9b75 Generate EVT_GLCANVAS_MOUSE_DRAGGING_FINISHED event after an object has been dragged on scene 2018-11-26 08:36:31 +01:00
Enrico Turri
f838d8cf18 Fixed GLCanvas3D::Selection::_ensure_on_bed() method 2018-11-23 13:20:04 +01:00
tamasmeszaros
746c1d2fd8 SLA support parameters changed: radiuses for diameters. 2018-11-23 13:05:24 +01:00
bubnikv
9722bcdd75 Merge branch 'master' of https://github.com/Prusa3d/Slic3r 2018-11-23 12:47:46 +01:00
bubnikv
b03f672801 Refactored to get direct access to GLCanvas3D in Plater and Preview.
WIP: SLA update delayed until mouse is released.
2018-11-23 12:47:32 +01:00
tamasmeszaros
a05bda5347 Removed head_back_radius and added pillar widening factor to the parameter layers 2018-11-23 11:51:45 +01:00
Enrico Turri
cabfca1031 Do not select wipe tower when using Select all command 2018-11-23 11:47:18 +01:00
Enrico Turri
bcf7a1f751 Fixed volumes translation (again) 2018-11-23 11:14:32 +01:00
Enrico Turri
66a08be209 Fixed transformations when deleting second-to-last sub-volume of an object 2018-11-23 10:50:25 +01:00
bubnikv
6da9d19916 Fixed lifting of models for SLA above the print if supports
or pad are calculated.
2018-11-23 09:33:01 +01:00
bubnikv
bde4153d44 Removed legacy GUI Perl bindings,
replaced Print & SLAPrint pointers with BackgroundProcessing pointer
at the GLCanvas3D level, so that the Print & SLAPrint access will be
synchronized with the current printer technology.
2018-11-22 15:29:59 +01:00
bubnikv
86c11df554 Merge branch 'master' of https://github.com/Prusa3d/Slic3r 2018-11-22 13:33:34 +01:00
bubnikv
8d7a34160d Fix of my previous commit. 2018-11-22 13:33:21 +01:00
Enrico Turri
3b3eab2e84 Added member m_sla_shift_z to GLVolume 2018-11-22 13:33:20 +01:00
bubnikv
233c1593f1 Merge branch 'master' of https://github.com/Prusa3d/Slic3r 2018-11-22 13:20:18 +01:00
bubnikv
a4be8ef6ad Fixed "setting an extruder does not change object's color" 2018-11-22 13:20:13 +01:00
Enrico Turri
200b3d010f Fixed volumes translation 2018-11-22 12:50:54 +01:00
Enrico Turri
cac56154ef Selection updated to detect sla volumes 2018-11-22 12:07:26 +01:00
Enrico Turri
c494dec1c4 Gizmos' shortcut not requiring shift key pressed 2018-11-22 11:13:00 +01:00
Enrico Turri
c60ed7bc07 Added shortcuts for gizmos 2018-11-22 10:14:31 +01:00
Enrico Turri
681beeadf6 Added menu Edit -> Select all 2018-11-21 15:28:35 +01:00
bubnikv
a21f1783a9 Added force_full_scene_refresh parameter to the 3DScene::refresh()
function to force a refresh of all GLVolumes. Currently this hack
is used by the Platter::arrange() function only, and ideally
we should replace this parameter with a smarter 3DScene::refresh()
function, which would check for the transformation matrices as well.
2018-11-21 13:52:46 +01:00
Enrico Turri
ee99fa2c64 Ensure object on bed after deletion of subpart 2018-11-21 12:27:20 +01:00
Enrico Turri
6aa4c0ca16 Fixed translation of volumes 2018-11-21 11:33:31 +01:00
Enrico Turri
86ac9ed91e Small refactoring 2018-11-21 10:36:09 +01:00
Enrico Turri
d8e7310d72 Gizmo rotate operates always in world reference system 2018-11-21 09:28:27 +01:00
bubnikv
18f14482d0 Merge branch 'vb_3dscene_partial_update' 2018-11-20 17:07:31 +01:00
Enrico Turri
bcfff27921 Fixed scaling of multivolumes selection - Added local scale by pressing Alt key while dragging the scale gizmo 2018-11-20 15:39:36 +01:00
Enrico Turri
b961d1011a Fixed rotation of multivolumes selection - Added local rotation by pressing Alt key while dragging the rotate gizmo 2018-11-20 11:57:01 +01:00
Enrico Turri
aa22f75829 Forced zoom to bed when changing bed size 2018-11-20 10:36:26 +01:00
Enrico Turri
34cf541e0d Fixed position of newly created modifiers 2018-11-20 10:15:31 +01:00
tamasmeszaros
f3b7b36d20 Merge remote-tracking branch 'origin/dev_native' into tm_sla_supports_backend 2018-11-19 17:59:30 +01:00
Enrico Turri
d322fa0fd5 Fixed gizmos overlay rendering/selection by adding GLGizmoBase::is_selectable() method 2018-11-19 14:46:37 +01:00
tamasmeszaros
ad8c7c9f97 GUI forms with SLA support parameters 2018-11-19 14:15:40 +01:00
Enrico Turri
7cb99f8e27 Added debug error message when missing icons for gizmos 2018-11-19 14:03:28 +01:00
Enrico Turri
dbc9bf5be7 Lift-up of SLA volumes only when at least one volume is generated 2018-11-19 13:04:19 +01:00
tamasmeszaros
0fcdc70327 Merge remote-tracking branch 'origin/dev_native' into tm_sla_supports_backend 2018-11-19 12:56:32 +01:00
Enrico Turri
eb4d1e9d5e Shift-up volumes after SLA support volumes creation 2018-11-19 12:20:44 +01:00
Vojtech Kral
6629d75853 Cutting 2018-11-18 21:20:47 +01:00
bubnikv
74ba1eaa16 WIP: Support of SLA suport & pad GLVolumes, couple of fixes. 2018-11-17 17:23:56 +01:00
bubnikv
b59d5d083f WIP: Fixed loading of SLA support meshes. 2018-11-16 18:59:13 +01:00
bubnikv
dafa4621aa Merge remote-tracking branch 'remotes/origin/dev_native' into vb_3dscene_partial_update 2018-11-16 18:31:39 +01:00
bubnikv
c9a4c6c73c Partial update of 3D scene (GLVolumes derived from Model and from
the SLAPrintObject).
Updated PrintBase to generate a unique timestamp at each step invalidation.
2018-11-16 18:28:50 +01:00
Enrico Turri
9084d64b3b Removed duplicated code 2018-11-16 12:58:43 +01:00
Enrico Turri
d45739fa15 Keeps objects on bed while scaling them using the scale gizmo 2018-11-16 11:30:36 +01:00
Enrico Turri
ed271d66e6 Fixed object picking when gizmos are rendered on top 2018-11-15 11:38:40 +01:00
Enrico Turri
72b5da952d Removed a bunch of obsolete methods 2018-11-14 15:57:11 +01:00
Enrico Turri
4149b9ad28 Snap in gizmo scale 3D when holding Shift pressed 2018-11-14 12:57:12 +01:00
YuSanka
62aa34b444 SpinCtrsl inside Manipulation pane is replaced to TextCtrls
+ Added "proces_enter" mode for TextCtrl (The control will generate the event wxEVT_TEXT_ENTER)
2018-11-14 12:35:15 +01:00
Enrico Turri
a56cee5f60 Gizmos rotate, move and scale rendered on top of geometry 2018-11-14 10:43:52 +01:00
Enrico Turri
3613a54e03 Deletion of instances and volumes from 3D scene 2018-11-14 08:53:56 +01:00
bubnikv
88445f98f0 Fixed forward declaration of enums, made volumes with negative ID
directly unselectable.
2018-11-13 18:44:30 +01:00
bubnikv
03875e7d71 GLVolume: split composite_id to object_id, volume_id and instance_id.
WIP: Added creation of GLVolumes for SLA supports.
2018-11-13 17:45:44 +01:00
Lukas Matena
df658713bf Wipe tower preview not shown in SLA mode 2018-11-12 15:41:04 +01:00
Enrico Turri
564fa9e4dc Enhanced volumes manipulation 2 (scaling in local system) 2018-11-12 09:54:04 +01:00
Enrico Turri
22dbcbcd9c Enhanced volumes manipulation - wip 2018-11-12 08:54:22 +01:00
YuSanka
2e8f21fff8 Changed toolbar icons for "split to object/part" 2018-11-08 16:44:59 +01:00
YuSanka
aa3e4c294a Added type "MultipleFullObject" to Selection
+ Fixed updating of the name of the manipulation pane
+ Changed logic of "Ctrl+A" inside the object list
2018-11-08 16:44:58 +01:00
Vojtech Kral
3e4af381c9 Fix rendering performance on macOS 2018-11-08 15:31:29 +01:00
Enrico Turri
e529315ef9 Fixed update of ModelVolume mirror after GLVolume manipulation 2018-11-07 14:51:11 +01:00
Enrico Turri
69208c4f43 Fixed update of ModelVolume scale after GLVolume manipulation 2018-11-07 14:24:10 +01:00
Enrico Turri
92528ebcb3 Fixed update of ModelVolume rotation after GLVolume manipulation 2018-11-07 14:15:04 +01:00
Enrico Turri
b05aa00089 Fixed update of ModelVolume offset after GLVolume manipulation 2018-11-07 14:01:03 +01:00
Enrico Turri
102bc99958 Only one instance enabled when selecting sub parts 2018-11-07 12:11:34 +01:00
Enrico Turri
f4b16bb242 Added new selection states - Select parts/modifiers from first instance only from right panel 2018-11-07 10:34:44 +01:00
Enrico Turri
57c769b63b Selection of modifiers in 3D scene 2018-11-06 15:51:33 +01:00
Enrico Turri
4f0869730a Do not render selection's bounding box when any gizmo is active 2018-11-06 10:31:19 +01:00
Enrico Turri
0810beae77 Reintroduced instances synchronization 2018-11-06 08:47:21 +01:00
Enrico Turri
4b5657b16b Fixed assert in GLCanvas3D::Selection::is_single_full_instance() 2018-11-05 10:54:05 +01:00
Lukas Matena
9442cb99f4 Flatten gizmo now correctly processes both instance and volume transformations 2018-11-05 09:34:04 +01:00
Lukas Matena
edceb80b18 Updated function names in GLCanvas3D.cpp (mismatch caused by two conflicting commits yesterday) 2018-11-03 08:46:51 +01:00
Lukas Matena
622f4ee4f6 Flatten gizmo should now work with multiple selection 2018-11-02 15:20:26 +01:00
Enrico Turri
3aad8b5fd2 Translation of ModelVolume as transformation component (without modifying the mesh) 2018-11-02 12:11:28 +01:00
Lukas Matena
93ef2de667 SLA supports gizmo is only shown in SLA mode 2018-11-02 10:31:57 +01:00
Enrico Turri
7751d991d4 GLCanvas3D::update_gizmos_data() set as private 2018-11-01 15:08:39 +01:00
Enrico Turri
a15bf7cc25 New selection set as default 2018-11-01 10:06:55 +01:00
Enrico Turri
00222226ed Mirror component of transformations set as default 2018-11-01 08:46:44 +01:00
Lukas Matena
cc27570704 Fixed a crash when moving an object with wipe tower volume on screen 2018-10-31 12:23:26 +01:00
Enrico Turri
da4903a37f New selection -> Disabled instances synchronization 2018-10-31 09:39:43 +01:00
Enrico Turri
503166a6a4 Automatic placement of instance at bed level 2018-10-30 16:03:03 +01:00
Enrico Turri
63960dfde0 Translate entire selection when user clicks and drags on a selected volume 2018-10-30 11:18:15 +01:00
Lukas Matena
7681d00ee5 Merged branch 'dev_native' into lm_sla_supports_auto
Added igl library files
2018-10-26 15:45:52 +02:00
Enrico Turri
f651182101 Rendering of camera target (for debug) and modified camera target behavior 2018-10-26 09:50:28 +02:00
Enrico Turri
321322b17a Fixed rendering of warning and legend textures (due to newer wxWidgets) 2018-10-25 15:32:35 +02:00
Enrico Turri
e72a058600 Fixed update of GUI when object is selected by right-clicking on it to show its context menu 2018-10-25 12:36:10 +02:00
Enrico Turri
c00ee0659e Call schedule_background_process() after rotating/scaling/flattening using gizmos 2018-10-25 12:10:35 +02:00
Enrico Turri
30fe846158 Do not translate selection if user press Shift while selecting and then drags 2018-10-25 11:06:08 +02:00
Enrico Turri
bde5f17d5c Fixed build on Linux and OSx 2018-10-25 10:36:47 +02:00
Enrico Turri
78d813cbc9 Tooltip when hovering on gizmo icons 2018-10-25 09:35:08 +02:00
Enrico Turri
90ecbce9bb Split to objects and Split to parts 2018-10-24 12:55:38 +02:00
bubnikv
bded28f888 WIP: Reconstruction of background processing. 2018-10-23 15:27:31 +02:00
Enrico Turri
9a4a41acbf New selection -> Fixed selection cleanup in GLCanvas3D::reset_volumes() 2018-10-23 11:50:30 +02:00
Enrico Turri
126f0e5073 Added mirroring factors to .amf import/export 2018-10-22 11:45:03 +02:00
Enrico Turri
68f77f1031 New selection -> Changed selection logic == Use SHIFT for both add to selection and remove from selection 2018-10-22 08:54:04 +02:00
Enrico Turri
5d94e6adb8 New selection -> Improved sychronization of instances selection between 3D scene and right panel 2018-10-19 16:14:55 +02:00
Enrico Turri
42a77316ba Planes of gizmo flatten visible from both sides 2018-10-19 13:26:42 +02:00
Enrico Turri
fbbe1325b6 Mirror transform components in ModelInstance and GLvolume - WIP and disabled 2018-10-18 15:50:51 +02:00
Enrico Turri
2c9a82e582 New selection -> Removed unneeded methods and small refactor 2018-10-18 15:09:41 +02:00
Enrico Turri
143c23c54a New selection -> Force volume selection when right clicking to get the object context menu 2018-10-18 08:51:06 +02:00
Enrico Turri
2e274b5646 Plater -> View Menu 2018-10-17 12:59:58 +02:00
Enrico Turri
7d1828df05 Object context menu wip / Removed links to settings dialog from user interface / Fixed and unified append_menu_item() function / Fixed File->Open menu item / Fixed Window menu items / Added Plater menu 2018-10-17 12:17:25 +02:00
Enrico Turri
b4a09d3d86 New selection -> Toolbar update 2018-10-16 16:04:19 +02:00
Enrico Turri
af4570741c New selection -> Improved gizmos activation 2018-10-16 14:56:35 +02:00
Enrico Turri
a8c459696f New selection -> Tighter bounding box for selections, tweaks to gizmo flatten and fix of instances update 2018-10-16 13:49:40 +02:00
Enrico Turri
059ab4a05c ModelInstance's full 3D transform set as default 2018-10-16 09:51:30 +02:00
Enrico Turri
27fd49d459 New selection -> Improved gizmo scale rendering and behavior 2018-10-15 13:22:36 +02:00
Enrico Turri
f2486bd87d New selection -> Gizmos methods refactored to accept selection instead of bounding box and scale gizmo in local system for single instance selections 2018-10-15 11:30:50 +02:00
Enrico Turri
76052d33bf New selection -> scaling wip 2018-10-12 15:43:29 +02:00
Enrico Turri
9bb93cc4f4 Added helper functions to extract euler angles from 3d transforms 2018-10-12 12:19:57 +02:00
Enrico Turri
aa0c3bf2e3 Added helper functions to generate 3d transforms 2018-10-12 10:09:16 +02:00
Enrico Turri
6563cff246 New selections -> allow all three rotations for single instance selection 2018-10-11 10:56:25 +02:00
Enrico Turri
bb2000d094 Simplified OpenGL calls 2018-10-11 10:52:50 +02:00
Enrico Turri
3bccb3b97c Extended interface for selections 2018-10-11 08:26:12 +02:00
Enrico Turri
3e5e72dafc New selection -> changed calculation of euler angles for multivolume rotations 2018-10-10 13:51:11 +02:00
Enrico Turri
6d33077564 New selection -> synchronization of indirectly selected instances 2018-10-10 11:04:04 +02:00
Vojtech Kral
bd85ca721e Plater & GLCanvas3D: Fix instance_moved event, add event handlers 2018-10-09 17:39:04 +02:00
Enrico Turri
895bdf7918 New selection -> rotation wip 2018-10-09 15:56:34 +02:00
Enrico Turri
99fe5761d8 New selection -> removed obsolete parameters from GLVolumeCollection::load_object() 2018-10-08 16:05:55 +02:00
Enrico Turri
9ae6d115a2 New selection -> removed obsolete methods\n+\nFixed a few compile warnings 2018-10-08 15:17:36 +02:00
Enrico Turri
384cfa0e6d 1st installment of new selections (disabled) 2018-10-08 14:02:12 +02:00
Enrico Turri
04e193011c Fixed crash when selecting object 2018-10-08 09:08:42 +02:00
YuSanka
42fd6bc7b5 Merge remote-tracking branch 'origin/dev_native' into ys_dev_native 2018-10-05 23:39:51 +02:00
YuSanka
ea30385fd0 Completed split of the GUI_ObjectParts 2018-10-05 23:29:15 +02:00
YuSanka
bcedd71e99 Start to Split GUI_ObjectParts:
+ created GUI_ObjectList & GUI_ObjectManipulation classes
2018-10-04 16:43:10 +02:00
Enrico Turri
96745e12d7 Use an unique opengl context 2018-10-04 10:41:11 +02:00
Enrico Turri
b3c09a9254 Fixed object position after loading 2018-10-03 16:18:23 +02:00
Vojtech Kral
83f55b608c Event.hpp: Set event object 2018-10-03 14:07:10 +02:00
Vojtech Kral
770d944283 Replace PerlCallbacks with events in GLCanvas3d et al. 2018-10-03 11:51:47 +02:00
YuSanka
08c6905751 Moved functions and variables (for fonts and labels color) to GUI_App
+ corrected Sidebar layouts
+ deleted get_preset_bundle
+ actions with tabs_list moved to GUI_App
2018-10-01 16:31:36 +02:00
Vojtech Kral
342b584399 WIP: Plater 2018-10-01 09:28:40 +02:00
bubnikv
6260e43f61 Merge remote-tracking branch 'origin/dev2' into dev_native 2018-09-25 15:33:51 +02:00
bubnikv
9a3db200a5 Updated AMF/3MF import to pass configuration into a DynamicPrintConfig
instead of PresetBundle.
2018-09-25 11:53:05 +02:00
bubnikv
20d0f046d2 Merge remote-tracking branch 'origin/dev2' into dev_native 2018-09-20 16:48:40 +02:00
bubnikv
0558b53493 WIP: Moved sources int src/, separated most of the source code from Perl.
The XS was left only for the unit / integration tests, and it links
libslic3r only. No wxWidgets are allowed to be used from Perl starting
from now.
2018-09-19 11:02:24 +02:00