Commit Graph

393 Commits

Author SHA1 Message Date
bubnikv
a56f7d60e5 Fixed an issue, where the output G-code file name was not always updated
from the current Model/ModelObjects.
Fixed a possible race condition in updating Print::m_placeholder_parser
with the proposed filename / filename base.
Improved documentation (source code comments).
2019-02-03 10:41:14 +01:00
Enrico Turri
016507f4ef Merge branch 'sidebar_fixes' of https://github.com/prusa3d/Slic3r 2019-02-01 14:32:21 +01:00
bubnikv
405d18a7fa Changed default the Drag & Drop target from "Move" to "Copy". Fixes #1742 2019-02-01 08:53:29 +01:00
YuSanka
ba6206ab62 First experiment to fix layouts on hdpi 2019-01-31 15:55:09 +01:00
Enrico Turri
5fa5d495bb Merge branch 'master' of https://github.com/prusa3d/Slic3r into sidebar_fixes 2019-01-31 13:32:47 +01:00
Enrico Turri
81c621716b User mode-aware toolbar items 2019-01-31 13:19:26 +01:00
YuSanka
a5ec951180 Added menu item for the "Fix through the Netfabb" 2019-01-30 16:27:33 +01:00
Enrico Turri
3aa9435c80 Merge branch 'master' of https://github.com/prusa3d/Slic3r into sidebar_fixes 2019-01-30 10:03:22 +01:00
Enrico Turri
19c1fc0b3f Hide slicing results after Delete All command 2019-01-30 10:00:38 +01:00
Enrico Turri
6137cc48eb ENABLE_IMPROVED_SIDEBAR_OBJECTS_MANIPULATION set as default 2019-01-28 16:06:44 +01:00
bubnikv
4a5cff3ee2 Reverted the slow auto arrangement of objects on loading.
(made configurable, once it is sped up, it will be re-enabled)
2019-01-28 10:56:02 +01:00
bubnikv
588c07c12a Performance improvements:
Lazy "Place on face" gizmo update.
Caching of MeshObject::raw_mesh_bounding_box() for the object size display.
ModelObject::bounding_box(), raw_mesh_bounding_box(), full_raw_mesh_bounding_box() will not copy the mesh.
TriangleMesh::transformed_bounding_box(const Transform3d &trafo) will not copy the mesh data.
get_options_for_bundle() will not return reference to temp value
is_splittable() calls cheap mesh.has_multiple_patches()
2019-01-26 18:51:34 +01:00
bubnikv
302a51f6cb Merge remote-tracking branch 'remotes/origin/tm_autoplacement' 2019-01-26 13:32:47 +01:00
bubnikv
241283d956 Merge remote-tracking branch 'remotes/origin/vk-bugfixes' 2019-01-26 13:10:58 +01:00
YuSanka
5a7061a7fb Updated settings menu according to the view mode
+ Created new class PrusaMenu, derived from wxMenu and contains pointers to the separators.
2019-01-25 16:57:44 +01:00
Enrico Turri
8abae757d3 Merge branch 'master' of https://github.com/prusa3d/Slic3r into objects_centering 2019-01-25 13:31:56 +01:00
Enrico Turri
5581830ab8 Fixed import of objects greater than print bed (range (5 < 10000) times) 2019-01-25 13:30:01 +01:00
Enrico Turri
348aa48121 Merge branch 'master' of https://github.com/prusa3d/Slic3r into objects_centering 2019-01-25 11:50:34 +01:00
YuSanka
9b8cdb95dc Updated view mode for object_list and object_menu 2019-01-25 10:57:13 +01:00
Enrico Turri
a8437f3ebb Merge branch 'master' of https://github.com/prusa3d/Slic3r into objects_centering 2019-01-25 08:43:25 +01:00
bubnikv
ceea83720a Fixed build on OSX & Linux 2019-01-25 08:37:06 +01:00
Vojtech Kral
3df1ed8f6b Mac: Retina OpenGL: Fix ImGui font switch, dynamic switching, toolbar fixes 2019-01-24 20:03:12 +01:00
Enrico Turri
d086bafb39 Merge branch 'master' of https://github.com/prusa3d/Slic3r into objects_centering 2019-01-24 15:58:40 +01:00
Enrico Turri
d82cacf1d8 Removed debug code committed by mistake 2019-01-24 15:57:53 +01:00
Enrico Turri
752a5b25f4 Merge branch 'master' of https://github.com/prusa3d/Slic3r into objects_centering 2019-01-24 15:52:28 +01:00
Enrico Turri
43beaf46d8 Deactivate layers editing tool if user selects more than one object 2019-01-24 15:50:06 +01:00
Enrico Turri
9a69305367 Merge branch 'master' of https://github.com/prusa3d/Slic3r into objects_centering 2019-01-24 08:33:14 +01:00
tamasmeszaros
8c57541fe9 Merge remote-tracking branch 'origin/master' into tm_autoplacement 2019-01-23 17:12:28 +01:00
YuSanka
8fd6194403 Improved Instance splitting :
- Added icon and context menu for Instance.
- Added multiple selection and splitting for the instances (add new object with selected instances)
2019-01-23 16:12:47 +01:00
tamasmeszaros
4e8c570d52 Polishing autoplacement feature for testing 2019-01-23 13:13:12 +01:00
Enrico Turri
9a5d7a98a6 Merge branch 'master' of https://github.com/prusa3d/Slic3r into objects_centering 2019-01-23 08:26:55 +01:00
tamasmeszaros
4628ba5767 Initial version of smart auto placement intended to replace autocenter. 2019-01-22 17:50:33 +01:00
YuSanka
94b5f9c567 Implemented splitting of object instances by :
- drag & drop outside of any object
 - set as a separated Object (context menu)
2019-01-22 16:40:37 +01:00
Enrico Turri
f44510c272 Merge branch 'master' of https://github.com/prusa3d/Slic3r into objects_centering 2019-01-22 08:32:05 +01:00
bubnikv
3366ce51e5 Merge branch 'master' of https://github.com/Prusa3d/Slic3r 2019-01-21 17:02:40 +01:00
bubnikv
ceb08d6380 Variable layer height editing:
Smarter updates of the SlicingParameters (update on ScheduleBackgroundProcessing
or on object selection change)
2019-01-21 17:02:16 +01:00
Enrico Turri
d8d7eac5a9 Fixed conflicts after merge with master 2019-01-21 14:43:57 +01:00
YuSanka
7a30dd250a Merge branch 'master' of https://github.com/prusa3d/Slic3r 2019-01-21 13:05:59 +01:00
YuSanka
1a474ea282 L10n improvements 2019-01-21 12:34:28 +01:00
Enrico Turri
25319113f1 Code cleanup 2019-01-21 11:29:45 +01:00
Enrico Turri
4577a49d5a Merge branch 'master' of https://github.com/prusa3d/Slic3r into objects_centering 2019-01-21 11:21:21 +01:00
bubnikv
ba1abf3f1f Merge branch 'master' of https://github.com/Prusa3d/Slic3r 2019-01-21 10:07:27 +01:00
bubnikv
d64b55d27d WIP Restoration of the layer editing. 2019-01-21 10:06:51 +01:00
Enrico Turri
cef761e6b6 Merge branch 'master' of https://github.com/prusa3d/Slic3r into objects_centering 2019-01-21 08:23:43 +01:00
Enrico Turri
1eb01df0c8 Fixed .prusa i/o and split to objects 2019-01-18 16:01:43 +01:00
Vojtech Kral
4ffe76f012 Cut: Prevent the neither part kept option 2019-01-18 15:43:40 +01:00
Enrico Turri
ce099e91c7 Fixed .amf i/o 2019-01-18 14:40:10 +01:00
Enrico Turri
80bae6dd98 1st installment of volumes centering fixes (WIP) 2019-01-18 12:52:09 +01:00
Enrico Turri
aa7ff0700b Reworked management of bed shape changes (may fix #1671) 2019-01-17 13:21:33 +01:00
Enrico Turri
8146be5510 Added shortcut strings to gizmos and toolbars tooltips 2019-01-16 11:51:30 +01:00
YuSanka
d6a203613d Fix of SPE-772
"Debug Assertion Failed" after the attention to D&D single material *.3mf to MMU preset
2019-01-15 15:54:48 +01:00
YuSanka
793e3cd470 Added "Frequently changed parameters for SLA-profiles" 2019-01-15 09:33:50 +01:00
bubnikv
2b0e1633cf Fix of "macos crash on WipeTower when using multi extruder + tower + support #1632"
Added a new validation into Print::validation() to verify, that
the non-soluble supports need to be printed with "current" extruder.
This check was already there, though for the global parameters only.
Now the check is performed inside the Print class for the object
override parameters as well.

Improved the Print::validate() handling. The Print::validate() is only
called if the Print::apply() indicates a change, or if the slicing
was executed by the user explicitely (with the "Slice now" button,
with the "Send to octoprint" button, or by switching to the print
path preview).
2019-01-10 16:06:24 +01:00
YuSanka
fcf41c7eb8 Fixed OSX compilation bug 2019-01-10 13:44:31 +01:00
YuSanka
c62a51ead1 Implemented ModeSizer with ModeButtons for the mode view changing from the settings tabs and plater 2019-01-10 11:09:31 +01:00
bubnikv
5b1c1d5922 Fixed a bug in the Win32 start wrapper (wrong number of parameters was passed for the GUI slic3r.exe).
Reworked command line processing for the GUI slic3r. Now the config is loaded first, then the model files (also the configs from AMF/3MF are applied), and lastly the free standing parameters are applied.
Fixed unescaping for command line parameters. The string parameters are now not unescaped, string vector parameters are unescaped only if enquoted.
Tab::load_current_preset() - disabled CallAfter for predictability. With CallAfter, it was difficult to call the method in sequence with other methods.
Fixed some missing ->Destroy() calls on dialogs created from MainFrame
Fixed some compiler warnings.
2019-01-09 10:43:17 +01:00
Enrico Turri
474e06ac85 Fixed missing mirror transform data when increasing instances count 2019-01-03 15:04:29 +01:00
bubnikv
8d1b854acb Replaced all wxString.ToStdString() with wxString.ToUTF8().data()
to be sure that the strings are correctly converted to UTF8.
2019-01-03 14:34:53 +01:00
Enrico Turri
b099d5c05e Removal of wxNotebook from plater set as default 2019-01-03 12:59:06 +01:00
Enrico Turri
0997825e0e Fixed import from amf files 2019-01-03 12:04:14 +01:00
Enrico Turri
ca6a7ac8d5 Further improvement in objects manipulation using sidebar (multiselection) 2019-01-03 11:24:03 +01:00
Enrico Turri
d426895580 Automatic selection of newly loaded objects 2019-01-03 09:12:50 +01:00
bubnikv
c4d5c7cefd Fix of "When exporting plate as STL Files are saved as 1KB and corrupted #1536"
This is a regression issue, and it only happened when exporting the plater.
2019-01-02 18:36:48 +01:00
bubnikv
4227499534 Fix of "Color Picker Placement #1496"
Now the color picker from the plater is centered around the associated
combo box. Keep your fingers crossed, it seems to be working, but
on a two monitor setup the color picker may jump to the other screen.
2019-01-02 17:54:54 +01:00
Enrico Turri
2adce62643 Background texture for toolbars set as default 2019-01-02 16:26:22 +01:00
Vojtech Kral
2db0906071 Fix fs::path <-> wxString conversions 2019-01-02 15:53:52 +01:00
Enrico Turri
9b8a68565f Modified camera target behavior set as default 2019-01-02 14:04:26 +01:00
Enrico Turri
611d9aa0d8 Model's volume transform set as default 2019-01-02 10:49:13 +01:00
bubnikv
126035f6f8 Fixed many errors in background processing synchronization and update.
Fixed couple of compiler warnings.
2018-12-22 10:02:42 +01:00
Enrico Turri
4a2c0722f7 2nd attempt to fix switching between 3d view/preview using tab key on Mac 2018-12-21 11:39:37 +01:00
Enrico Turri
4c823fea40 Merge branch 'master' of https://github.com/prusa3d/Slic3r 2018-12-21 11:13:47 +01:00
Enrico Turri
6370902a1b Code cleanup 2018-12-21 11:13:33 +01:00
YuSanka
fb78957687 Fixed updating of settings after selection of the preset with "modified" suffix
+ Added EVT_SPINCTRL binding
2018-12-21 10:59:21 +01:00
Enrico Turri
964209f89b Attempt to fix switching between 3d view/preview using tab key on Mac 2018-12-21 10:43:22 +01:00
Enrico Turri
1d3d87c2b9 Fixed toolbar update when switching between 3d view/preview using tab or ctrl+5/6 2018-12-21 10:10:49 +01:00
bubnikv
cb0488df12 Tab key to switch between the 3D view / path preview. 2018-12-20 22:30:42 +01:00
Enrico Turri
68684dd003 Removed obsolete GLCanvas3D::m_shader_enabled 2018-12-20 13:20:21 +01:00
Enrico Turri
780e3c700e Attempt to reduce ugly artifacts when switching to preview for the 1st time 2018-12-20 12:51:42 +01:00
bubnikv
5553d10c1e Merge branch 'master' of https://github.com/Prusa3d/Slic3r 2018-12-19 14:47:25 +01:00
bubnikv
e9990ed79e Fix of SPE-691 Slicer crash after extruder change
Added synchronization of GCodePreviewData between the front end / back end
(GCodePreview data is only used if PrintStep psGCodeExport is finished).
Added reset of GCodePreviewData on Print::apply() to conserve RAM.
2018-12-19 14:47:16 +01:00
YuSanka
b7c506170d Fixed OSX build
+ Added shortcut (?) for "Keyboard Shortcuts" dialog
2018-12-19 14:01:46 +01:00
bubnikv
354458ae73 Merge branch 'master' of https://github.com/Prusa3d/Slic3r 2018-12-19 12:07:53 +01:00
bubnikv
a6a1a866d8 Fix of SPE-695 Minus key should not delete object 2018-12-19 12:07:45 +01:00
Enrico Turri
9d8e78636b Fixed loading of huge models 2018-12-19 09:54:15 +01:00
bubnikv
bb5caf2e08 Fixed scaling of the object, if it was loaded too big.
Here the large object was not scaled uniformly, and the Z height
of the bed was set incorrectly to one.
2018-12-18 18:41:20 +01:00
YuSanka
7d1fb201e7 Implemented updating of the settings values for PointCtrl and Choice.
* wx_EVT_KILL_FOCES doesn't handled on OSX, so values are updating on wx_EVT_TEXT like a temporary workaround.
2018-12-18 15:29:49 +01:00
Vojtech Kral
66b5deccf5 PrintHost: Basic SL1 support 2018-12-18 14:37:35 +01:00
YuSanka
01edb23ffc Fixed the enabling of the "split to objects/parts" buttons 2018-12-17 18:08:32 +01:00
Vojtech Kral
862217a6b3 OctoPrint basics working, niceties to-do 2018-12-17 17:14:00 +01:00
Enrico Turri
f7a6ee9e29 Fixed volume shown in info panel for scaled objects 2018-12-17 15:45:20 +01:00
Enrico Turri
083c626770 Added background texture to toolbars 2018-12-17 10:55:14 +01:00
YuSanka
48a94ebae1 Fixed scroll the Object List to selected item on OSX & GTK
+ fixed #1395 (maximum PresetComboBox's width limit on Ubuntu)
2018-12-14 12:11:23 +01:00
YuSanka
27f5df5fbd Fixed broken DnD on GTK
+ show "Object menu" for each FullInstance instead of FullObject
2018-12-13 13:38:18 +01:00
Vojtech Kral
913cece5a6 Plater: Remove extraneous button 2018-12-12 14:18:27 +01:00
Vojtech Kral
2350fb62b9 WIP OctoPrint integration 2018-12-12 13:17:01 +01:00
bubnikv
09c539a242 Trigger background processing update when switching to a preview tab.
Implements "Go Direct to the preview screen after slicing #152"
2018-12-11 17:49:31 +01:00
bubnikv
52db7b055a WIP: Merged commits from stable between 1.41.2-beta and 1.42.2 final.
Changes in SupportMaterial.cpp, TriangleMesh.cpp and 01_trianglemesh.t
are yet to be merged.

WIP: Refactoring of layer height editing.
Removed layer_height_ranges from PrintObject, as the Print/PrintObject
now hold their copies of Model/ModelObject.
2018-12-11 16:33:43 +01:00
YuSanka
293d6ba8ad Suppressed import/adding of the 3mf which contains multi-part objects
+ Try to fix the wrong extruder selection under OSX
2018-12-10 13:40:19 +01:00
YuSanka
33a2d86bad After merge context menu fixing 2018-12-07 18:28:59 +01:00
YuSanka
386d46417a Merge branch 'master' of https://github.com/prusa3d/Slic3r 2018-12-07 18:00:17 +01:00
YuSanka
c80267bb29 Context menu from the object on the 3Dscene 2018-12-07 17:50:48 +01:00
Enrico Turri
45f44da3b1 Fixed volume shown in info panel 2018-12-07 16:44:18 +01:00
Vojtech Kral
0c7c9d5754 Plater: single object STL export and reloading
Based on Plater.pm`export_object_stl() and reload_from_disk()
2018-12-07 13:58:44 +01:00
bubnikv
fbbfcf70d3 File wildcards now include an extension of a file provided
as a default. This is useful for the G-code or SLA export,
as one may chose his own file extension for the export file.
2018-12-06 17:32:49 +01:00
bubnikv
67e9829b49 Merge branch 'master' of https://github.com/Prusa3d/Slic3r 2018-12-06 15:41:42 +01:00
bubnikv
e41f8b9bc7 Wipe tower update fixes 2018-12-06 15:40:41 +01:00
YuSanka
e382692a3f Try to fix sub_menu work(on the Scene) under OSX and Linux
+ some code refactoring for context menu inside ObjectList
2018-12-06 14:49:57 +01:00
bubnikv
79986188a7 Removed the "Quick Slice" menu items from the main menu,
a little bit of code cleaning / refactoring.
2018-12-06 14:47:53 +01:00
Enrico Turri
c96c9808aa Removal of tabs from plater -> Nicer icons and reduced flickering when changing view 2018-12-06 13:44:38 +01:00
Enrico Turri
8d78b23c78 Removal of tabs from plater -> Fixed buttons update when switching between views using keyboard 2018-12-06 12:37:39 +01:00
Enrico Turri
c908a4674a Removal of tabs from plater -> added buttons to scene to switch between views 2018-12-06 10:38:19 +01:00
bubnikv
27b95584f4 Merge branch 'master' of https://github.com/Prusa3d/Slic3r 2018-12-04 17:57:05 +01:00
bubnikv
c586ca4ae0 Implemented compatible_printer / compatible_printer_condition
for filaments and SLA materials.

Fixed compatible_printers / compatible_prints dialog to show
system profiles as well.
2018-12-04 17:56:49 +01:00
Enrico Turri
8d25f3aaaf Removal of tabs from plater -> fixed no-imgui case 2018-12-04 15:17:24 +01:00
Enrico Turri
428800ad1e 1st installment of removal of tabs from plater 2018-12-04 13:55:25 +01:00
YuSanka
129c35b714 One more fix to updates of the "Slice now" and "Export G-code buttons"
- "Sliced now" button is hidden when "Background process" is selected
- deleted extra enable_buttons() function call
2018-12-04 12:30:47 +01:00
bubnikv
60f870bbd9 Merge branch 'master' of https://github.com/Prusa3d/Slic3r 2018-12-04 11:15:10 +01:00
bubnikv
160aa6c78c Fixed updates of the "Slice now" and "Export G-code buttons"
based on the object inside / outside the work space condition.

Removed TabIface.cpp/hpp Perl bindings.

Fixed reset of the status bar / cancel button after the last object
is removed from the plater.
2018-12-04 11:14:39 +01:00
YuSanka
3c86203655 Disable "Slice now" and "Export G-code" buttons during BGP 2018-12-04 10:28:56 +01:00
YuSanka
b3c5a62709 Check selection for PresetComboBox 2018-12-03 15:17:07 +01:00
Enrico Turri
fe8e431356 New menu layout set as default 2018-12-03 15:06:02 +01:00
YuSanka
7395b923bd Update gizmos on/off state 2018-12-03 13:29:28 +01:00
bubnikv
435163fb73 Merge branch 'master' of https://github.com/Prusa3d/Slic3r 2018-12-03 13:21:48 +01:00
bubnikv
d46d0dc365 Implemented naming of the SLA export file based on the output file name
template.

Reworked naming of the plater exports to not use the output file name
template, but to derive the file name from the first printable object's name.

Fixed error handling: Reimpemented the Perl's "eval" blocks
as try / catch blocks.
2018-12-03 13:14:28 +01:00
tamasmeszaros
d50644eef8 Fix for uninitialized variable which might break sla auto rotation 2018-11-30 15:41:45 +01:00
YuSanka
d7f9e86400 Update additional object setting after print technology changing 2018-11-29 15:01:20 +01:00
tamasmeszaros
980c53970b merge tm_sla_supports_backend with master, reapply fix for index slice invalidation, fix for autorotation z offset 2018-11-29 11:45:02 +01:00
Vojtech Kral
18c95c404c Fix wxNotebook event incontinence 2018-11-28 19:26:48 +01:00
YuSanka
c010e14460 Suppress ColorPrint for the multi-material printing 2018-11-28 16:03:25 +01:00
Enrico Turri
e6369fe548 SLA slices preview - wip 3 2018-11-27 14:50:57 +01:00
Vojtech Kral
2585e3103d imgui: Fix ENABLE_IMGUI, disable on OS X for now 2018-11-27 11:28:19 +01:00
tamasmeszaros
3f0ea223d1 Speeding up the auto rotation algorithm (decreasing accuracy) 2018-11-27 11:09:25 +01:00
Vojtech Kral
3b20d03e1d Cut: Preserve Z-rotation, fix upper part mesh position,
perform custom placing instead of arrange()
2018-11-26 17:09:37 +01:00
bubnikv
a378bb7bed Removed some obsolete Perl bindings.
Removed libslic3r from the default include paths for all modules but
libslic3r. Now headers from libslic3r need to be included with an
explicit path (libslic3r/libslic3r.h etc)
Split the localization macros into I18N.{cpp,h}
2018-11-26 14:41:58 +01:00
Vojtech Kral
c29493a41b imgui: Refactor, use in cut gizmo 2018-11-26 11:16:39 +01:00
Enrico Turri
b94f19eaf4 Added method GLCanvas3D::is_dragging() 2018-11-26 10:41:16 +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
45b51bd40e remove + shortcut from 'optimize rotation' menuitem 2018-11-23 09:56:49 +01:00
tamasmeszaros
7efadfae1c Merge branch 'tm_sla_supports_backend' 2018-11-22 16:12:22 +01:00
tamasmeszaros
c7434a492b Available object menu item: optimize orientation 2018-11-22 16:04:21 +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
94b1183843 Synchronize SLA background processing on UI change, so that
the supports disappear if invalidated.
2018-11-22 12:42:17 +01:00
Enrico Turri
e247b532fb Added Edit -> Delete all menu item 2018-11-22 11:31:53 +01:00
Enrico Turri
3e939a7496 Added menu Edit -> Delete selected 2018-11-21 15:47:41 +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
bubnikv
bc9de8956a Removed the unused force_autocenter parameter from Plater::update() 2018-11-21 13:32:24 +01:00
tamasmeszaros
2fffb0c2ff Arrangement is still not working, update is probably broken. 2018-11-21 11:07:08 +01:00
bubnikv
18f14482d0 Merge branch 'vb_3dscene_partial_update' 2018-11-20 17:07:31 +01:00