Commit graph

3534 commits

Author SHA1 Message Date
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
66535b41d5 Time optimization of GLCanvas3D::_travel_paths_by_feedrate() 2019-08-26 11:41:25 +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
bubnikv
9cbfe8f5ef Make sure the "avoid crossing perimeters" class is resetted
at the start of G-code export.
2019-08-26 09:55:00 +02:00
bubnikv
972b7d2d6b Merge branch 'master' of https://github.com/Prusa3d/PrusaSlicer 2019-08-26 09:51:35 +02:00
bubnikv
9abef2241d The ASCII STL import was made more tolerant to non-standard input format,
namely:
1) Whitespaces are allowed at the end of lines
2) A freeform is allowed after "endloop", "endfacet" and "endsolid", if separated
from the keyword by a whitespace. Some ASCII STL exporters likely add their
annotations in there.

Fixes "Error on importing stl" 
2019-08-26 09:50:28 +02:00
Enrico Turri
b5c57fc134 Follow-up of c7cdb2fd3e -> Fixed localization of error messages for .3mf and .amf version check 2019-08-26 09:35:04 +02:00
Enrico Turri
7f589e79f7 Follow-up of 32dc4709a4 -> A more general fix 2019-08-26 09:06:21 +02:00
YuSanka
ed2bad6709 Unified calculation of icon size for preset BitmapComboBox 2019-08-25 10:31:18 +02:00
YuSanka
55b2b0737c Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer 2019-08-25 09:44:46 +02:00
YuSanka
ea2e07ec74 Fixed application crash, when change focus from overridden option to empty space in ObjectList. 2019-08-25 09:44:32 +02:00
bubnikv
de43f579a9 Refactoring of AvoidCrossingPerimeters::init_external_mp() 2019-08-25 09:01:01 +02:00
bubnikv
ceae7b4889 Fix of support generator regression agains 2.1.0-alpha1.
https://github.com/prusa3d/PrusaSlicer/issues/2810
https://github.com/prusa3d/PrusaSlicer/issues/2808
2019-08-25 08:59:47 +02:00
bubnikv
c725fd4ed5 Merge remote-tracking branch 'remotes/origin/lm_avoid_crossing_perimeters_parallel' 2019-08-25 08:32:02 +02:00
bubnikv
29a51bc46f Updated bundled Prusa3d profiles
Bumped up the version to 2.1.0-beta, changed the user configs directory
to PrusaSlicer-beta.
2019-08-23 16:15:03 +02:00
bubnikv
04d6cfe8de Merge remote-tracking branch 'remotes/origin/ys_update_settings' 2019-08-23 16:08:24 +02:00
YuSanka
8f019e5fa9 Set bigger scroll step for sidebar 2019-08-23 16:05:18 +02:00
bubnikv
a0a82b1d8b Merge branch 'master' of https://github.com/Prusa3d/PrusaSlicer 2019-08-23 15:53:51 +02:00
bubnikv
6adebb9c78 When synchronizing the front end with the back end after Undo / Redo
jump, postpone error messages, so they are displayed after
the Undo / Redo jump has been fully performed.
Otherwise there would be a message box opening, taking over the message
queue, and possibly performing actions as rendering on an inconsistent
application state.
2019-08-23 15:53:45 +02:00
YuSanka
90096e2c8b Fixed assert on Linux 2019-08-23 15:32:47 +02:00
YuSanka
6dbba8dbb0 Added missed include for OSX build 2019-08-23 13:58:12 +02:00
bubnikv
bb6cde789d Fix of a missing parameter. 2019-08-23 13:44:07 +02:00
bubnikv
12cb930634 A little optimizaiton 2019-08-23 13:27:19 +02:00
bubnikv
93c6915e9d Merge branch 'master' of https://github.com/Prusa3d/PrusaSlicer 2019-08-23 13:26:47 +02:00
YuSanka
7929bda24a Resize of the KBShortcutsDialog according to the display size 2019-08-23 13:22:29 +02:00
Enrico Turri
c7cdb2fd3e Added version check for .3mf and .amf project files. PrusaSlicer will refuse to import files with newer version numbers. 2019-08-23 13:12:31 +02:00
Lukas Matena
3addae3bb4 GCode.cpp: Avoid crossing perimeters performance optimization 2019-08-23 13:06:29 +02:00
bubnikv
007a5301eb Merge remote-tracking branch 'remotes/origin/lm_sla_gizmo_snapshots_supports' 2019-08-23 12:56:47 +02:00
YuSanka
058a1d9a98 Some refactoring for ObjectList::remove() for the purpose of getting correct Undo/Redo snapshots 2019-08-23 12:32:58 +02:00
Enrico Turri
1cf311529a Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer 2019-08-23 12:28:03 +02:00
Enrico Turri
32dc4709a4 Workaround to fix gizmos' imgui dialog not showing up the first time the user activates them by using keyboard shortcuts. 2019-08-23 12:27:46 +02:00
Lukas Matena
1d8e060b75 Followup of previous commits - removing some unnecessary code 2019-08-23 12:11:45 +02:00
Lukas Matena
bf232e1ade Fixed forward declaration of struct Slic3r::UndoRedo::Snapshot so MSVC does not complain 2019-08-23 10:34:16 +02:00
bubnikv
89fb8fd43c Merge branch 'master' of https://github.com/Prusa3d/PrusaSlicer 2019-08-23 10:03:00 +02:00
bubnikv
ac62734033 Fixed time stamps for the configuration snapshots
(local / UTC time functions were mixed up)
2019-08-23 10:02:45 +02:00
YuSanka
77d793c540 KBShortcutsDialog is changed to ScrollWindow 2019-08-23 09:44:03 +02:00
Enrico Turri
189312624a Disable layers editing if enabled while switching to SLA printer 2019-08-23 09:27:15 +02:00
Lukas Matena
52933d1bab Recalculate SLA supports after undo/redo in case SLA gizmo was active and had supports when the snapshot was taken 2019-08-23 01:42:59 +02:00
Lukas Matena
b55a140ad4 SLA gizmo takes snapshots on opening and closing 2019-08-23 01:42:59 +02:00
Lukas Matena
c736b657d4 SLA gizmo now refuses to close with unsaved changes in editing mode 2019-08-23 01:42:59 +02:00
Lukas Matena
24b9c926c6 GLGizmoManager.cpp: Initial work on the possibility of a gizmo refusing to close 2019-08-23 01:42:59 +02:00
bubnikv
911589efe1 Merge branch 'master' of https://github.com/Prusa3d/PrusaSlicer 2019-08-22 20:03:36 +02:00
bubnikv
0de566e2a2 Hopefully a workaround for crashes and hang ups at closing on Windows.
Release the OpenGL contexts not by a destructor of a static class,
but explicitely (predictively).
2019-08-22 20:03:17 +02:00
YuSanka
628d2a2614 Fixed "split to part" for Undo/Redo stack 2019-08-22 15:43:06 +02:00
bubnikv
c6604ff55d Merge remote-tracking branch 'remotes/origin/et_toolpaths_export' 2019-08-22 15:02:02 +02:00
YuSanka
ee38d80318 Added missed include
+ Added update of overrided settings, if they are shown on sidebar
2019-08-22 14:21:50 +02:00
Enrico Turri
2c9521c6d2 Model::convert_multipart_object() modified to keep original object position on the bed 2019-08-22 13:29:21 +02:00
YuSanka
a966a46896 Merge remote-tracking branch 'origin/master' into ys_update_settings 2019-08-22 13:19:44 +02:00
YuSanka
8828ec7860 Code refactoring: ConfigManipulation moved to separate files.
Use of ConfigManipulation inside of TabPrint(TabSLAPrint)::update().
2019-08-22 13:19:01 +02:00
Enrico Turri
56080bee8d Merge branch 'et_colorprint_no_m600' of https://github.com/prusa3d/PrusaSlicer 2019-08-22 11:51:00 +02:00
bubnikv
9856859bf4 Merge branch 'master' of https://github.com/Prusa3d/PrusaSlicer 2019-08-22 11:48:07 +02:00
bubnikv
0333553389 Windows specific fix of extruder selection and object editing
at the object list: When clicking on a column of an already selected line,
simulate ENTER key to enter the editing mode. This works most of the time,
but not 100% reliably.
solves the arthritis issue 
2019-08-22 11:47:58 +02:00
Lukas Matena
e928c0ac0b Added a missing include 2019-08-22 11:35:25 +02:00
YuSanka
7ff68ad210 Merge remote-tracking branch 'origin/master' into ys_update_settings 2019-08-22 10:27:45 +02:00
YuSanka
ea4f76ea80 Implemented update for overridden options on sidebar 2019-08-22 10:25:19 +02:00
Enrico Turri
42b8176e9b Temporary human readable form for print color change tag for time estimate 2019-08-21 16:06:56 +02:00
tamasmeszaros
1b00932a01 Small refactor for BedShapeHint 2019-08-21 15:39:20 +02:00
Enrico Turri
c1d8fa377e Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer into et_colorprint_no_m600 2019-08-21 15:21:23 +02:00
bubnikv
6bc82bc21a Merge branch 'master' of https://github.com/Prusa3d/PrusaSlicer 2019-08-21 14:52:30 +02:00
bubnikv
dc3a0a0ab3 Refactoring of EdgeGrid to accept an segment to segment visitor.
WIP: PolygonTrimmer to trim skirt & brim with polygons stored in EdgeGrid.
2019-08-21 14:52:22 +02:00
Enrico Turri
9cabb03f72 GCodeTimeEstimator uses annotated gcode in place of processing m600 lines to detect color print changes.
WARNING -> After this commit the exported gcode will contain the extra lines used by the time estimator. They will be removed by a future commit when a new post-process method will be implemented.
2019-08-21 14:43:14 +02:00
Enrico Turri
b79457b723 Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer into et_colorprint_no_m600 2019-08-21 14:09:45 +02:00
Enrico Turri
85ed363951 GCodeAnalyzer uses annotated gcode in place of processing m600 lines to detect color print changes 2019-08-21 14:09:20 +02:00
tamasmeszaros
67a6775773 Making arrange a little bit smarter: fix for issue 2019-08-21 14:07:56 +02:00
bubnikv
668a8cd2ea Fix of an update of support extruders when changing number
of printer extruders.
2019-08-21 14:05:32 +02:00
bubnikv
40d313961e Fixing issues in Print / PrintObject / PrintRegion reporting
a list of printing extruders.
2019-08-21 13:49:37 +02:00
bubnikv
ded2019765 Fix of "spiral vase printable for a single region object only" check. 2019-08-21 13:08:26 +02:00
bubnikv
7c0c5705df Fix of Excessive external_perimeter_extrusion_width error
Increased the perimeter_extrusion_width check limit to 3x nozzle diameter.
2019-08-21 09:28:32 +02:00
bubnikv
0fbfbf4bd8 Merge branch 'master' of https://github.com/Prusa3d/PrusaSlicer 2019-08-21 08:51:50 +02:00
bubnikv
e403118d7d Fixed a typo in an error message. 2019-08-21 08:50:38 +02:00
YuSanka
2cc2c02a9c Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer 2019-08-21 08:45:22 +02:00
Lukas Matena
6a22651501 Fixed a typo preventing compilation on Linux 2019-08-20 20:24:37 +02:00
YuSanka
18d3792d37 Fixed a slack bug with wrong filament preset selection after importing of config 2019-08-20 18:45:12 +02:00
bubnikv
775a54846f Fixed compilation of Win32 message boxes on unix systems. 2019-08-20 17:46:19 +02:00
bubnikv
ccddcf88be Merge branch 'master' of https://github.com/Prusa3d/PrusaSlicer 2019-08-20 17:39:39 +02:00
tamasmeszaros
b58713c06f SLA exposure bounds to printer params. 2019-08-20 17:24:48 +02:00
bubnikv
c8a78f5d85 Merge remote-tracking branch 'remotes/origin/ys_bf_msw_scale' 2019-08-20 16:53:23 +02:00
bubnikv
88dcb7f366 Checking for OpenGL driver version in the GUI slicer and giving some
reasonable advice to the user in case OpenGL < 2.0 was detected.
2019-08-20 16:38:03 +02:00
bubnikv
2e7d5e5bc1 Merge branch 'master' of https://github.com/Prusa3d/PrusaSlicer 2019-08-20 16:22:37 +02:00
bubnikv
fd3fe75d1c Reworked the rename_file() function on Windows to work reliably and
atomically. The code was taken from the llvm project, it is complex
and hopefully it covers all the Windows file system quirks. Vojtech
has highest hopes, that this will fix the various PrusaSlicer.ini
file corruptions.

Enabled the locales switching and error handling on Linux as well,
where now the missing locales are reported and running the locale-gen
tool is recommended.
2019-08-20 16:19:30 +02:00
tamasmeszaros
bafa4d6d19 Follow up: Adding new sla material parameters...
Small fix for redundant operations.
2019-08-20 16:01:44 +02:00
tamasmeszaros
7c94db0634 Adding new sla material parameters: (initial) exposition min/max 2019-08-20 15:49:32 +02:00
YuSanka
448d773da0 Fixed default transparency for ColorPicker from sidebar (was appeared under OSX for empty extruder color).
+ Fixed wrong getting of instance printable value inside add_object_to_list()
2019-08-20 15:27:51 +02:00
Vojtech Kral
03079d4928 avrdude: Fix: Generate the embedded conf in the bin dir, remove from repo
The generated file avrdude-slic3r.conf.h is not kept in repo any longer
- it was causing trouble for git diffing.
It's now generated in $CMAKE_CURRENT_BINARY_DIR and included from there.

The file embeds avrdude-slic3r.conf so that the conf doesn't need to
be loaded from disk.
2019-08-20 15:15:30 +02:00
Enrico Turri
6e522cea15 Added missing include 2019-08-20 14:58:27 +02:00
Enrico Turri
403e2c7003 Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer into et_toolpaths_export 2019-08-20 14:35:39 +02:00
Enrico Turri
1b6490af4c Export materials file for gcode toolpaths when exported to obj file 2019-08-20 14:35:23 +02:00
Lukas Matena
53939796a6 GCode.cpp: Fix of temperature change before print
Function set_extruder can be called before moving to the first layer, m_layer_index is then -1. We definitely don't want to set temperature for second layer in that case.
2019-08-20 14:22:31 +02:00
YuSanka
ae9b0a401c Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer 2019-08-20 13:01:51 +02:00
YuSanka
52c24a1662 Set list manipulation action on LeftButton too
Note: Doesn't work under OSX
2019-08-20 13:01:01 +02:00
Enrico Turri
2e3c71baaf Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer into et_toolpaths_export 2019-08-20 12:10:50 +02:00
Enrico Turri
f63b3ba600 Fixed gcode toolpaths data for export to obj file when taken from cpu 2019-08-20 12:10:15 +02:00
Vojtech Kral
1fc05bbf00 ConfigWizard: Fix: Snapshot not being taken on user-requested Wizard run
If the user launched Wizard from the menu and checked the reset
checkbox, snapshot was not taken in case no new bundles were
to be installed from resources (ie. most of the time).

Snapshot is now taken as appropriate.
2019-08-20 12:00:23 +02:00
Enrico Turri
da00b7bfa5 Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer into et_toolpaths_export 2019-08-20 11:34:18 +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
YuSanka
7706a5be3e Fixed
+ Added update for plater config option "filament_colour", when we have multiple extruder print.
2019-08-20 09:52:01 +02:00
YuSanka
6780e74521 Update 3D-scene after filament's color change 2019-08-20 09:52:01 +02:00
YuSanka
3e62d7ae64 Implemented button "Reset to Filament Color" 2019-08-20 09:52:00 +02:00
Enrico Turri
a99a89a831 Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer into et_toolpaths_export 2019-08-20 09:51:44 +02:00
Enrico Turri
730283a9e9 Export to obj file only toolpaths visible in 3D scene 2019-08-20 09:51:25 +02:00