Commit Graph

1512 Commits

Author SHA1 Message Date
bubnikv
384ee17fcb Merge remote-tracking branch 'remotes/origin/lm_circular_priming' 2019-08-20 09:34:45 +02:00
bubnikv
2870416e4d Merge remote-tracking branch 'remotes/origin/lm_exceptions_rebased' 2019-08-20 09:20:57 +02:00
bubnikv
778e499827 Merge remote-tracking branch 'remotes/origin/lm_wipe_tower_linear_advance' 2019-08-20 09:19:22 +02:00
Vojtech Kral
0ded335488 build: Add source file encoding check
Source files are checked using a small utility in src/build-utils
This is done to prevent bugs in build and localization caused
by weird non-UTF-8 encodings interpreted by MSVC in terms of local codepages
rather than UTF-8.
2019-08-19 17:04:14 +02:00
Vojtech Kral
745182988d Refactor: Move Semver from slice3r to libslic3r
A static symbol Slic3r::SEMVER is introduced, which holds
the running slicer's Semver object.

This is mainly done to make testing updater behaviour
_much_ easier. Additionaly to cleanup some questionable code
(Semver was being parsed multiple times / in multiple places
in the frontend.)
2019-08-19 17:04:14 +02:00
bubnikv
e30a17beb3 Fixed memory issues of BedShapeHintwhen using unions of non-trivial objects 2019-08-19 17:01:39 +02:00
Lukas Matena
92bdb68e11 Extended the error message when empty layers are detected 2019-08-19 15:50:49 +02:00
YuSanka
283cee3f27 Fixed SPE-1000.
Since the value inserted from the keyboard or clipboard is not updated under OSX,
we forcibly set the input value for SpinControl every time during editing.
Thus we can't set min control value bigger then 0.
Otherwise, it couldn't be possible to input from keyboard value less then min_val.
2019-08-19 12:58:59 +02:00
tamasmeszaros
eddf932161 Set min SLA display resolution to 1x1 (see SPE-1000) 2019-08-19 10:58:44 +02:00
tamasmeszaros
65368db49b Merge branch 'master' into tm_clang_mingw 2019-08-16 16:37:02 +02:00
tamasmeszaros
c187a5fb69 Fix up build and clear dev output 2019-08-16 16:31:05 +02:00
tamasmeszaros
7e0199746e more clang warnings enabled, performance measuring
Succesfull build on mingw-w64


fix sandboxes


Mingw fixes and full parallel support tree gen.
2019-08-16 16:17:37 +02:00
Lukas Matena
0f32223ba0 WipeTower: linear advance is disabled immediately before ramming, not before moving to the wipe tower
Linear advance is reset by filament start gcode after a toolchange. However, not all moves to the wipe tower
end with a toolchange (brim, empty grid) and it would therefore disable linear advance until the next toolchange
This should solve https://github.com/prusa3d/PrusaSlicer/issues/2770
2019-08-16 00:20:51 +02:00
tamasmeszaros
8fce511806 Fix for issue #2765, arrange crash with custom beds 2019-08-15 16:15:17 +02:00
Lukas Matena
4cca6f8724 Allowed the skirt to intersect brim (https://github.com/prusa3d/PrusaSlicer/issues/724)
Brim lines are split at the intersection so there is no overextrusion.
2019-08-15 12:27:49 +02:00
Lukas Matena
15744f021a Print::validate: added epsilon checks on nozzle and filament diameter validation (https://github.com/prusa3d/PrusaSlicer/issues/2737)
Changed messagebox text after changing extruder diameter with single extruder printers so it is more obvious why it shows

In case nozzle diameters differ and someone checks 'single_extruder_mm', PrusaSlicer asks whether all diameters should be unified. Answering NO did not undo the SEMM check. It does now.
2019-08-15 10:43:17 +02:00
Lukas Matena
c84b1ca34b Multimaterial initial priming for non-Prusa printers (https://github.com/prusa3d/PrusaSlicer/issues/1121)
The initial priming now does not assume anything about bed width and always uses the space it has
In case of circular beds it places the priming lines along the diameter
Custom beds are not supported (they are treated as circular with no extra checks whether it is sane)
Slight refactoring of the WipeTower class (constructor now gets reference to PrintConfig and not the individual values, same with set_extruder). This was legacy from times when the wipe tower was meant to be abstract and independent on the rest)
2019-08-15 01:41:46 +02:00
YuSanka
2d1c554758 Some reverts for commit 4cd4d2c8b5 2019-08-14 17:07:30 +02:00
YuSanka
4cd4d2c8b5 Fixed wrong page selection for Printer Setting after application run 2019-08-13 17:09:42 +02:00
Lukas Matena
c189140221 Fixed a false positive empty layer report
Reported in https://github.com/prusa3d/PrusaSlicer/issues/2752 and was a result of setting support contact z distance to negative value.
This lowered the maximum allowed print_z of the next layer, even though previous layer had object layers too, so the penalty from the contact z should not have been applied.
Fixed simply by rejecting the negative contact_z.
2019-08-13 11:02:58 +02:00
tamasmeszaros
a49caea6cc Hotfix for crash when empty pad and support mesh is generated. 2019-08-09 17:13:18 +02:00
bubnikv
9b700ef252 Merge branch 'master' of https://github.com/Prusa3d/PrusaSlicer 2019-08-09 09:58:27 +02:00
bubnikv
46fa83adac Only validate support_material_extrusion_width with supports
or raft enabled.
2019-08-09 09:58:05 +02:00
tamasmeszaros
52702769d4 Hotfix for crash with support disabled and pad enabled. 2019-08-08 19:12:37 +02:00
Lukas Matena
1b5d561b7c Added handling of std::bad_alloc so the user gets more comprehensible error message
Call to boost::nowide::nowide_filesystem() was made Windows only
2019-08-08 16:55:25 +02:00
bubnikv
bcfb445d0c Partial revert of f474978db5
to fix Perl driven unit tests.
2019-08-08 15:24:23 +02:00
bubnikv
7e694a8fb8 Workaround for invalid access inside some character classification table
when parsing localized file names by the PlaceholderParser:
UTF8 characters were handled as chars, and the negative char values were
used as indices into 7bit long tables.
2019-08-08 14:21:24 +02:00
bubnikv
f474978db5 Clean up the mess required for the legacy Perl bindings, which are now
used for Perl unit / integration tests only. With this commit,
the code will be cleaner, but likely the unit tests will not run
on Windows, if installed in a localized path.
2019-08-08 12:59:55 +02:00
bubnikv
23b2b4c59f Merge remote-tracking branch 'remotes/origin/vb_picking_fix' 2019-08-08 09:50:02 +02:00
tamasmeszaros
0ca37729aa Merge branch 'master' into tm_zero_elev_ui 2019-08-07 15:28:17 +02:00
bubnikv
abd89e4f9a Merge remote-tracking branch 'remotes/origin/master' into vb_picking_fix 2019-08-07 14:31:16 +02:00
Lukas Matena
8e4f777bd3 One more fix on the empty layers detection - support contact z distance is taken into account
If it wasn't, anything with raft would be rejected unless contact z was zero. We do not want that.
2019-08-07 12:02:30 +02:00
Lukas Matena
f61c982111 GCode.cpp: fixed detection of empty layers so it doesn't give false positives
That could happen on empty support layers which do not necessarily matter, since their spacing is not generally synchronized with the object
The new hopefully correct logic is "if there are extrusions on a layer, check that last layer with extrusions is at most the new layer height below
This is a fixup of changes from 0de6e53 and 6ab1cec
2019-08-07 10:54:36 +02:00
bubnikv
2f642ffffb ModelInstance::is_printable() takes into account printability
of the parent ModelObject.
2019-08-07 10:18:16 +02:00
tamasmeszaros
92e1649606 Merge branch 'master' into tm_zero_elev_ui 2019-08-06 16:54:46 +02:00
tamasmeszaros
3c09473f2a Added additional checkbox to enable zero elevation 2019-08-06 16:51:32 +02:00
YuSanka
35a06d5bf4 Merge remote-tracking branch 'origin' into ys_printable_property 2019-08-06 16:28:25 +02:00
YuSanka
8a2362587d Save/load printable flag to/from 3mf and amf 2019-08-06 16:27:56 +02:00
bubnikv
9905f8d349 Fix of the previous commit: zero extrusion width parameter is
always valid, it is replaced with an "auto" value.
2019-08-06 15:36:16 +02:00
bubnikv
74e592ceaa Improved handling of excessive extrusion width values (too small
or too big).
Fixes std: bad_alloc #2715
2019-08-06 15:11:46 +02:00
YuSanka
0520da3241 Merge remote-tracking branch 'origin' into ys_printable_property 2019-08-06 10:31:17 +02:00
Lukas Matena
b0d4cb6e06 Memory usage is now shown in SysInfoDialog on all three platforms 2019-08-05 20:17:29 +02:00
bubnikv
ef0e323d1b Merge branch 'master' of https://github.com/Prusa3d/PrusaSlicer 2019-08-05 17:49:31 +02:00
bubnikv
cf2f16d864 Fixed Model::convert_multipart_object() for STLs (regression from 8e2af5151dcf6f102b65981ff5aa56c2dfda5a2a).
Removed Model::s_auto_extruder_id and related, as it is a Perl interfacing legacy.
Fixed a typo in asserts introduced in the preceding commit.
2019-08-05 17:49:21 +02:00
Lukas Matena
6da196b419 Corrected return value of ConfigOptionVector::apply_override to what was intended (this didn't cause any bug though, the return value is currently not used) 2019-08-05 15:24:49 +02:00
bubnikv
7e1d2daf78 Merge branch 'master' of https://github.com/Prusa3d/PrusaSlicer 2019-08-05 14:30:42 +02:00
bubnikv
731e5abd88 Fixed a regression issue where excessive memory was allocated
for the GLVolumes before sending to the GPU driver. The following commits
were partially reverted:

4269c8b23c Removed GLVolume non-VBO rendering
d15698e21e GLVolume and GLIndexedVertexArray refactored to send data to gpu at the first render call

Namely, the GLVolume buffers are "shrink to size"'d before sending their
content to the OpenGL driver, and the vertex buffers are populated
as quickly as possible from the GLVolume, so that the same buffer is not
kept twice in RAM on systems, where the RAM is shared with the graphics
card.

Also the memory allocation reporting was improved for the GLVolumes.
2019-08-05 14:30:32 +02:00
Lukas Matena
3efae8a03e Added a memory logging function for Mac and Linux 2019-08-05 13:39:03 +02:00
YuSanka
825446d145 Merge remote-tracking branch 'origin/master' into ys_printable_property 2019-08-05 08:45:47 +02:00
Lukas Matena
0de6e53219 Followup of 6ab1cec - empty layers are ok if there are only other empty layers on top of them
Also fixed a possible crash in Print.cpp when preparing the wipe tower layers
2019-08-04 22:57:59 +02:00
Enrico Turri
77df54947b Follow-up of c791ba776f -> Estimated times for color print layed-out as 'time for color (remaining time at color start)' 2019-08-03 08:51:03 +02:00
Lukas Matena
6ab1cec48c Empty layers detection added to GCode.cpp
Added detection of empty layers so the wipe tower doesn't trip on them (it is not printable anyway).
This should improve wipe tower reliability with supports, objects standing on edges, etc.
I also turned an assert into exception throw to prevent hard crashes and nonsense output.
2019-08-02 16:54:18 +02:00
YuSanka
3b24565411 Fixed wrong naming of bottom infill pattern 2019-08-02 16:16:12 +02:00
Enrico Turri
c791ba776f Added absolute time to estimated time for color print and fixed a bug in showing estimated times for print color for silent mode 2019-08-02 12:05:02 +02:00
Enrico Turri
28cc595350 #2593 - Fixed loading of .zip.amf files when running from command line 2019-08-02 09:43:41 +02:00
tamasmeszaros
7d25d8c677 Can build with (original llvm) clang-cl on windows 2019-08-01 16:03:52 +02:00
Lukas Matena
170bd8b064 Wipetower fix: temperature-changing command was sometimes missing after the toolchange
Cause: variable holding last issued temperature was not reset where it should have been
This should fix issue #2685
2019-08-01 15:31:02 +02:00
YuSanka
885da35544 Merge remote-tracking branch 'origin/master' into ys_printable_property 2019-08-01 15:15:18 +02:00
bubnikv
576643c7ed Bumped up the version to 2.1.0-alpha0.
Updated the bundled profiles to integrate retract overrides
for PET and FLEX materials.
2019-08-01 11:53:22 +02:00
YuSanka
3bade450b8 Merge remote-tracking branch 'origin/ys_overrides' 2019-07-31 13:05:47 +02:00
Enrico Turri
0647d3ac1e Code cleanup 2019-07-31 11:12:50 +02:00
Enrico Turri
bdd694ddcb Added member bool printable to ModelObject and ModelInstance 2019-07-31 08:36:08 +02:00
tamasmeszaros
1ab3268d55 Performance optimizations and some cleanup.
Optional heavy parallelism which is disabled by default. Would like to test it further in a next release cycle.
2019-07-30 17:57:07 +02:00
tamasmeszaros
ca1f3dc6af Improved logging of SLA support tree creation. 2019-07-30 17:55:22 +02:00
tamasmeszaros
57008d0d77 Include SLACommon.hpp into the project.
File is reformatted, but only the whitespace is changed.
2019-07-30 17:54:25 +02:00
bubnikv
ca1c78b3fc Merge remote-tracking branch 'remotes/origin/et_custom_bed' 2019-07-30 16:48:47 +02:00
Lukas Matena
94f9b701e2 Merge branch 'lm_sla_gizmo_undo' 2019-07-30 14:52:44 +02:00
tamasmeszaros
320f964847 Fixing zero elevation bug when concave hull overlap was not detected.
Backported from tm_perf_optims
2019-07-30 14:24:42 +02:00
YuSanka
05325e4f2e Set "wipe_into_infill" and "wipe_into_objects" options to the "Wipe options" category instead of "Extruders" 2019-07-29 16:56:24 +02:00
YuSanka
d0d01ef7ab Merge remote-tracking branch 'origin/vb_filament_overrides' into ys_overrides 2019-07-28 22:01:48 +02:00
YuSanka
40a576a8ad Implemented update of the override filaments options from/to config 2019-07-28 22:00:39 +02:00
Lukas Matena
fe62362960 Hiding the sla support structures after undo/redo 2019-07-28 11:37:08 +02:00
Enrico Turri
10b27968d1 Code cleanup 2019-07-26 11:32:44 +02:00
bubnikv
17edc289e9 Fixed missing return value. 2019-07-25 17:18:51 +02:00
bubnikv
86287a28ec Fixed the Perl bindings, made Print::m_placeholder_parser protected,
removed the non-const accessor method to m_placeholder_parser.
2019-07-25 17:08:31 +02:00
bubnikv
2bcdfc8378 Merge remote-tracking branch 'remotes/origin/master' into vb_filament_overrides 2019-07-25 14:40:54 +02:00
bubnikv
f8218eb903 Reworked the FFF Print::update() to process the filament retract
override values and to store them into the output G-code.
2019-07-25 14:39:19 +02:00
YuSanka
ab2519cde4 Merge remote-tracking branch 'origin/master' into ys_overrides 2019-07-24 12:47:00 +02:00
bubnikv
42c8940795 Fixed is_nil() method on ConfigOptions.
PlaceholderParser was extended to support external config.
The external config has a lowest priority when looking up a variable.
2019-07-24 12:39:01 +02:00
bubnikv
6ea3a8e2b4 WIP: Nullable config values. Fixed compare operator for float vectors. 2019-07-23 17:15:34 +02:00
Enrico Turri
1b5ba6c823 Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer into et_custom_bed 2019-07-23 15:36:39 +02:00
Enrico Turri
9a127ed016 Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer into et_selection_undoredo 2019-07-23 15:14:19 +02:00
Enrico Turri
0d10d8aba7 1st installment for selection's undo/redo snapshots 2019-07-23 15:14:08 +02:00
bubnikv
3b1a44c084 WIP: Nullable configuration value concept, implemented for
ConfigOptionFloatsNullable, ConfigOptionIntsNullable,
ConfigOptionPercentsNullable, ConfigOptionBoolsNullable.

retract override values were added to the Filament profile:
vector of floats: "retract_length", "retract_lift", "retract_lift_above",
	"retract_lift_below", "retract_speed", "deretract_speed",
	"retract_restart_extra", "retract_before_travel",
vector of bools: "retract_layer_change", "wipe"
vector of percents: "retract_before_wipe"
2019-07-23 14:15:42 +02:00
Lukas Matena
91a5d70a62 Fixed a few warnings in headers (meaning they were reported once for each include)
Fixed an identification of CXX compiler in cmake so that 'AppleClang' is recognized
2019-07-23 14:02:20 +02:00
Lukas Matena
506be9035b Wipe tower now supports filaments with diameters different from 1.75 mm 2019-07-23 14:02:20 +02:00
Enrico Turri
7749677b27 Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer into et_custom_bed 2019-07-22 11:57:17 +02:00
Enrico Turri
dcedb9e3d3 Follow-up of 699319cd86 -> Fixed build on Mac 2019-07-22 11:47:23 +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
Enrico Turri
996b227391 Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer 2019-07-22 11:23:52 +02:00
Enrico Turri
699319cd86 #2663 - Added handling of gcode lines M401 and M402 for Repetier flavour to GCodeAnalyzer 2019-07-22 11:23:42 +02:00
tamasmeszaros
764efb1385 Remove disabled code. 2019-07-22 11:18:10 +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
tamasmeszaros
8d66b51e8c Merge branch 'master' into tm_arrange_selection 2019-07-19 18:17:58 +02:00
tamasmeszaros
63fada9469 Arrange selection if shift is pressed. Remove first item centering 2019-07-19 18:10:10 +02:00
bubnikv
252159e31e Merge branch 'master' of https://github.com/Prusa3d/PrusaSlicer 2019-07-19 15:29:15 +02:00
bubnikv
dbc1918193 Undo / Redo. Workaround for the Wipe tower. 2019-07-19 15:29:04 +02:00
Lukas Matena
eb29c3e01d Wipe tower accounts for extruder offsets
Also, in case of non-single-extruder printer with the wipe tower, first wiping line was printed where the border should have been - fixed
2019-07-19 13:00:10 +02:00
tamasmeszaros
72ed8c034e Fix for incorrect inside check of fixed items.
libnest2d: Add dispatched overloads for offsetting different shapes.
2019-07-19 12:34:27 +02:00
Enrico Turri
37f2362aab Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer into et_custom_bed 2019-07-19 11:36:07 +02:00
Lukas Matena
fca5562c6c Process start_filament_gcode in case of usual single extruder printer
Reported in https://github.com/prusa3d/PrusaSlicer/issues/2652
2019-07-19 10:02:52 +02:00
Enrico Turri
84d61e28fd Tech ENABLE_TEXTURES_FROM_SVG set as default 2019-07-19 09:52:01 +02:00
Enrico Turri
3344650255 Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer into et_custom_bed 2019-07-19 09:18:32 +02:00
bubnikv
4049f33609 Fix of osx builds 2019-07-18 18:19:40 +02:00
bubnikv
d669a00980 Merge remote-tracking branch 'remotes/origin/master' into vb_undo_redo2 2019-07-18 17:42:10 +02:00
bubnikv
a0ea96968d Storing the active printer technology onto the Undo / Redo stack,
remembering the last selected Printer profile for the SLA and FDM
technologies separately, and activating them on Undo / Redo.

When switching the technologies, user is asked whether to discard
the modified profiles or not.
2019-07-18 17:41:47 +02:00
tamasmeszaros
6ae50a710a Further refactoring 2019-07-18 17:31:27 +02:00
tamasmeszaros
b2867f9227 Merge branch 'master' into tm_arrange_selection 2019-07-18 16:33:16 +02:00
tamasmeszaros
76b1fbc5bf Eliminate some igl warnings on msvc 2019-07-18 16:32:04 +02:00
tamasmeszaros
e3ca95152c Minor refactor 2019-07-18 16:30:32 +02:00
tamasmeszaros
99b8e08e67 Remove arrange cache. 2019-07-18 12:58:28 +02:00
Enrico Turri
de383b1809 Added selection of custom bed model to bed shape dialog 2019-07-18 12:56:52 +02:00
bubnikv
69ef6cf806 Fix for compilation on clang: Forward declarations of templates. 2019-07-18 12:07:50 +02:00
bubnikv
cd95b52dcd Undo / Redo memory conservation strategy: Release recoverable data
starting from the objects of lowest ObjectID.
(convex hulls are recoverable as well as the indexed triangle sets
inside the TriangleMeshes or the triangle connectivity information).

Now the top most snapshot (the temp one taken before Undo jump) will
never be released.
2019-07-18 11:51:06 +02:00
Enrico Turri
08d37aad06 Added selection of custom bed texture to bed shape dialog 2019-07-18 11:12:11 +02:00
tamasmeszaros
6949543912 Fixes after merge with master. 2019-07-17 18:10:08 +02:00
tamasmeszaros
a695dec51a Merge branch 'master' into tm_arrange_selection 2019-07-17 17:25:31 +02:00
tamasmeszaros
aff1863aed Really fix build for msvc 2019-07-17 16:47:09 +02:00
bubnikv
7176599a34 Merge remote-tracking branch 'remotes/origin/master' into vb_undo_redo2 2019-07-17 15:54:57 +02:00
bubnikv
3a74e7ab69 WIP: Undo / Redo memory limiting by releasing the least recently
used snapshots. Memory limit set to 10% of physical system memory.
2019-07-17 15:48:53 +02:00
tamasmeszaros
c74e6513d9 Fix for msvc build. 2019-07-17 14:34:28 +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
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
Lukas Matena
52ab8a5f19 Wipe tower fix (do not skip the first toolchange when printing without the wipe tower)
Also, test multi.t updated so it matches new logic of inserting custom gcodes
2019-07-16 13:10:09 +02:00
bubnikv
4865240a9c Fixed compilation issue 2019-07-16 09:19:00 +02:00
tamasmeszaros
1b0e192046 Arrange cache in ModeInstance and logical bed remembered. 2019-07-15 17:30:44 +02:00
Lukas Matena
004e2719b1 Merge branch 'master' into lm_warnings 2019-07-15 13:26:55 +02:00
Lukas Matena
63cf5edf28 Updated tooltips on custom gcodes to match actual PrusaSlicer behaviour to reflect recent changes 2019-07-15 11:49:30 +02:00
bubnikv
ab7ecc1819 Merge remote-tracking branch 'remotes/origin/vb_undo_redo' 2019-07-15 11:34:18 +02:00
Lukas Matena
e674c586b0 Merge branch 'lm_improving_wipe_tower'. Summary of changes:
- wipe tower respects max volumetric flow, slowing down with PVA etc is not hardcoded anymore
- wipe tower is now allowed for multiple-extruder printers. single extruder stuff is not used in that case (ramming, cooling, etc.)
- start/end filament and toolchange custom gcodes are now inserted differently than before - see 41164a9
- some refactoring, e.g. the abstract WipeTower class was eradicated
2019-07-15 10:25:38 +02:00
tamasmeszaros
df7bb94daf Not handling logical beds in arrange() 2019-07-12 21:17:11 +02:00
Lukas Matena
2ee572bd31 GCodeAnalyzer now recognizes tool-changing commands with MakerWare and Sailfish flavor
These firmwares use M135 Tn and M108 Tn commands for changing active tool, which the analyzer did not recognize. The toolpaths were then rendered in wrong color, extruder offset etc. This surfaced in issue https://github.com/prusa3d/PrusaSlicer/issues/2566
2019-07-12 12:56:41 +02:00
Enrico Turri
cc70c8dff9 Tech ENABLE_SVG_ICONS set as default 2019-07-12 10:13:35 +02:00
Enrico Turri
1f74d7fdfc Added color number in legend texture for color prints 2019-07-09 15:47:34 +02:00
Enrico Turri
29dfa786ff Merge branch 'et_color_print_times' of https://github.com/prusa3d/PrusaSlicer 2019-07-09 14:24:24 +02:00
tamasmeszaros
af89bcee53 Merge branch 'master' into tm_builtin_pad 2019-07-09 13:21:26 +02:00
tamasmeszaros
18fcb64681 Fixing broken SLA slicing: SPE-984 2019-07-09 13:12:55 +02:00
Enrico Turri
ad5329253e Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer into et_color_print_times 2019-07-08 08:45:11 +02:00
Enrico Turri
25d916f144 Color change time estimates 2019-07-08 08:40:20 +02:00
bubnikv
4e2fda3315 Undo / Redo fixes 2019-07-05 19:06:19 +02:00
bubnikv
6a3fc5bde3 Documented the cereal library manual patching (FIXME!) 2019-07-05 11:42:36 +02:00
bubnikv
7c732c7482 Trying to fix some Linux & OSX compilation issues. 2019-07-04 23:34:18 +02:00
bubnikv
211d1ee1e3 Trying to make all C++ of the platforms happy. 2019-07-04 22:52:33 +02:00
bubnikv
9fd0c55eb8 Simplified the "cereal" includes to not clash with Perl includes 2019-07-04 22:09:14 +02:00
bubnikv
497b01f24a Trying to fix some template resolution on Linux 2019-07-04 21:02:08 +02:00
bubnikv
b1420283b6 Fixed merge issues. 2019-07-04 20:49:46 +02:00
bubnikv
3a24fb2f47 Yet another compilation fix. 2019-07-04 20:25:52 +02:00
bubnikv
c7cc760067 Merge remote-tracking branch 'origin/master' into vb_undo_redo 2019-07-04 20:22:15 +02:00
bubnikv
1070991149 Merge remote-tracking branch 'origin/ys_undo_redo' into vb_undo_redo 2019-07-04 20:15:50 +02:00
bubnikv
3e5f9b5a22 Removed some junk templates, which pass compilation on Windows
even if they are invalid.
2019-07-04 19:59:45 +02:00
bubnikv
70c6558a4c Fix of compilation on Linux 2019-07-04 19:48:00 +02:00
YuSanka
a29cc9e242 Update object list after undo/redo 2019-07-04 19:46:46 +02:00
bubnikv
1798e2a84c WIP Undo / Redo : serialization / deserialization of object selection. 2019-07-04 14:35:04 +02:00
YuSanka
e4d8c5410c Merge remote-tracking branch 'origin/master' into ys_new_features 2019-07-04 14:26:05 +02:00
tamasmeszaros
9372f1c6ad Wip in Nester interface 2019-07-04 13:58:18 +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
bc315f4c2c Deal with infinite box. 2019-07-03 15:06:10 +02:00
bubnikv
e2a670218b WIP Undo / Redo: Serializing the configs of ModelObject / ModelVolume
/ ModelMaterial as separate objects to conserve memory.
2019-07-03 13:43:54 +02:00
bubnikv
5e846112ee WIP UndoRedo: Added Undo/Redo stack, added Platter::take_snapshot(),
experimental snapshots on loading STLs and increasing / decreasing
model instances.
2019-07-02 16:42:23 +02:00
tamasmeszaros
87c5e9bbaa Partial arrange starts to work again. 2019-07-02 15:24:40 +02:00
YuSanka
136e5156bc Fixed colot_print issues:
* Disabled color change information for the SLA and FFF-multimaterial presets
* Corrected switch between "color print" and "feature type" on Preview
2019-07-02 14:06:58 +02:00
tamasmeszaros
914bf63228 Unify AutoArranger subclasses 2019-07-02 12:15:53 +02:00
Vojtech Kral
f09fb92b61 Fix build against system-provided qhull 2019-07-02 11:43:07 +02:00
tamasmeszaros
ba82cbe007 Fix broken partial arrange 2019-07-02 10:32:01 +02:00
tamasmeszaros
253ec07cb2 Still WIP 2019-07-01 18:22:07 +02:00
YuSanka
125f474f02 Merge remote-tracking branch 'origin/master' into ys_new_features 2019-06-29 12:38:03 +02:00
tamasmeszaros
cb3a586deb Adapt find_new_position is WIP. Cleaning up comments. 2019-06-28 18:27:15 +02:00
tamasmeszaros
299e4f74c7 Arranging with new structure. 2019-06-28 17:03:50 +02:00
tamasmeszaros
f0ac54ba32 Merge branch 'master' into tm_builtin_pad 2019-06-28 16:51:55 +02:00
tamasmeszaros
548f19462a Fix formatting 2019-06-28 15:42:59 +02:00
tamasmeszaros
4c69a855a1 Merge branch 'master' into tm_builtin_pad 2019-06-28 15:29:26 +02:00
Vojtech Kral
61080bcff6 Merge branch 'bugfixes': avrdude warnings cleanup 2019-06-28 15:21:45 +02:00
tamasmeszaros
19e6bf58dd WIP on structuring arrange inputs 2019-06-27 21:13:44 +02:00
YuSanka
0b940ec089 Some code improvements 2019-06-27 16:07:32 +02:00
YuSanka
37b37cdf25 Fixed small typo 2019-06-27 14:13:07 +02:00
YuSanka
dd1fb286c3 Merge remote-tracking branch 'origin/master' into ys_new_features 2019-06-27 14:01:50 +02:00
YuSanka
cecc134550 Rewrote layers information export/import to/from 3mf using Boost Property Tree (xml_parser) 2019-06-27 13:55:24 +02:00
Enrico Turri
75b0f65d79 Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer 2019-06-27 11:25:13 +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
bubnikv
27ee68d2f9 WIP Undo / Redo: ModelID / ModelBase renamed to ObjectID / ObjectBase 2019-06-27 11:02:45 +02:00
bubnikv
71d1255219 Merge branch 'master' of https://github.com/Prusa3d/PrusaSlicer 2019-06-27 09:48:31 +02:00
bubnikv
da3583b1db Fix of https://github.com/prusa3d/PrusaSlicer/issues/2516 2019-06-27 09:48:19 +02:00
enricoturri1966
d16c670ed1
Merge pull request #2569 from BeldrothTheGold/master
Add debug preprocessor directive in Technologies.hpp to render picking pass to window.
2019-06-27 09:44:48 +02:00
tamasmeszaros
96f6fd2d9f Merge branch 'master' into tm_arrange_selection 2019-06-27 09:33:32 +02:00
tamasmeszaros
e1d612d05f work in progress on new ModelArrange interface 2019-06-26 17:09:26 +02:00
bubnikv
d99e932ee8 WIP Undo / Redo: Serialization of the Model / ModelObject / Model instance
using the cereal framework.
2019-06-26 16:29:12 +02:00
tamasmeszaros
dd108f4513 Hotfix for inconsistent slice index 2019-06-26 14:59:39 +02:00
Lukas Matena
4b9e366f00 Multimaterial print - making sure that temperatures will be changed with SE printer without the wipe tower 2019-06-26 14:50:12 +02:00
YuSanka
1525a864c5 Merge remote-tracking branch 'origin/master' into ys_new_features 2019-06-26 13:33:05 +02:00
bubnikv
624a6aefb4 Fixed crashes after loading some AMFs. 2019-06-26 13:29:49 +02:00
bubnikv
a710e7e7e4 WIP: Undo / Redo stack.
Integration of the "cereal" serialization library.
Serialization / deserialization of the DynamicConfig / DynamicPrintConfig.
DynamicPrintConfig serializes ordinal identifiers instead
of the option key strings to conserve space.
2019-06-26 13:26:49 +02:00
tamasmeszaros
f4ed0d8137 Working on arrange selection only feature.
revert changes related to scale/unscale
2019-06-26 12:24:30 +02:00
tamasmeszaros
f93e7496f7 Merge branch 'tm_scales' 2019-06-26 11:33:42 +02:00
tamasmeszaros
6ff434aba3 Fixes some ModelArrange warnings 2019-06-26 11:10:41 +02:00
tamasmeszaros
14b32c4f16 Make an order in using scale and unscale, remove some warnings. 2019-06-26 10:34:27 +02:00
BeldrothTheGold
d818d1b429 Add debug option to display picking pass to screen 2019-06-25 19:25:03 -06:00
Vojtech Kral
85575e5615 Fix: IsTriviallyCopyable on clang 2019-06-25 18:16:53 +02:00
Lukas Matena
cb916c4dda Fixed warnings in libslic3r 2019-06-25 16:04:29 +02:00
YuSanka
daac165a44 Merge remote-tracking branch 'origin/master' into ys_new_features 2019-06-24 13:56:35 +02:00
tamasmeszaros
75ed542686 Reformatted MTUtils with some refined directives.
Only whitespace changes in MTUtils.hpp !
2019-06-24 13:03:46 +02:00
tamasmeszaros
121b6c078b Print bed not considered as object in arrange anymore. 2019-06-24 13:01:52 +02:00
Enrico Turri
fab3634931 #2395 - Reworked logic of method Model::convert_multipart_object() 2019-06-24 12:43:18 +02:00
Enrico Turri
1459ad65c6 #2433 - Time Estimator: clamp accelerate/decelerate distances to avoid them to become negative 2019-06-24 12:35:20 +02:00
Enrico Turri
6b0d75127b #2428
1) Reworked logic for pasting volumes

2) Fixed paste of volumes into different objects

3) Do not apply offset when pasting into the copied object

4) Keep source transformation matrix and relative positions when copy/pasting volumes into another object
2019-06-24 12:26:11 +02:00
Enrico Turri
38d5817bc9 Disabled ENABLE_CAMERA_STATISTICS 2019-06-24 11:23:25 +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
301eda7369 ENABLE_TEXTURES_MAXSIZE_DEPENDENT_ON_OPENGL_VERSION set as default 2019-06-24 09:27:19 +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
Lukas Matena
743a08f0cf WipeTower - fixed a crash in extrude_explicit when called from finish_layer before the first toolchange 2019-06-21 10:58:20 +02:00
bubnikv
7de5a42df3 Fixed compilation on clang / OSX (missing float.h) 2019-06-20 21:07:26 +02:00
bubnikv
b7a949a53e Fix for C++11 2019-06-20 20:40:17 +02:00
bubnikv
ac6969c992 Reworked the Perl unit / integration tests to use the same Print
interface that the application is using. Old interface used just
for the integration tests was removed.
2019-06-20 20:23:05 +02:00
bubnikv
27459a9072 Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer 2019-06-20 16:15:26 +02:00
bubnikv
35b3fd3176 Integrated the new layer height spans with configs into the backend.
Fixed some compiler warnings.
2019-06-20 16:15:09 +02:00
tamasmeszaros
3b0e0aaed4 Fixes for degenerate cases. 2019-06-20 13:01:48 +02:00
tamasmeszaros
c82fd692c3 Merge branch 'master' into tm_builtin_pad 2019-06-20 10:04:17 +02:00
tamasmeszaros
2ae2672ee9 Building igl statically and moving to the dep scripts
Fixing dep build script on Windows and removing some warnings.

Use bundled igl by default.

Not building with the dependency scripts if not explicitly stated. This way, it will stay in
Fix the libigl patch to include C source files in header only mode.
2019-06-19 14:52:55 +02:00
Enrico Turri
5dcc6c7f36 Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer into et_perspective_camera 2019-06-19 14:33:31 +02:00
tamasmeszaros
89e39e3895 Eliminate magic constant 2019-06-19 13:19:11 +02:00
tamasmeszaros
670a563226 Fix for issue #2536 2019-06-19 12:04:11 +02:00
tamasmeszaros
4a71c42f9b Merge branch 'master' into tm_rotcalipers 2019-06-19 11:07:21 +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
tamasmeszaros
b4ef812d32 Merge branch 'master' into tm_sla_printer_mirror 2019-06-18 17:42:10 +02:00
tamasmeszaros
468516aa31 Apply fixes for the ui jobs.
- Localization
- Mutual exclusion (ExclusiveJobGroup), only one UI job can run at a time, and background processing is stopped
- m_range not used for finalization anymore
- stop_jobs called before Window is closed
2019-06-18 16:24:30 +02:00
tamasmeszaros
d60ecb3788 Merge remote-tracking branch 'origin/master' into tm_ui_jobs 2019-06-18 12:16:24 +02:00
tamasmeszaros
d7684188f9 Removing unused pad parts working 2019-06-18 11:28:52 +02:00
bubnikv
0c95d4e0d9 Merge remote-tracking branch 'remotes/origin/ys_new_features' 2019-06-18 10:01:29 +02:00
bubnikv
c95a324c3f Merge branch 'vb_admesh_fix' 2019-06-18 08:54:50 +02:00
tamasmeszaros
778b2cf293 WIP on removing unused parts of pad 2019-06-17 18:06:52 +02:00
YuSanka
7fe8965c53 Merge remote-tracking branch 'origin/master' into ys_new_features 2019-06-17 13:50:12 +02:00
tamasmeszaros
90a854f704 Fix levitation when supports are disabled. 2019-06-17 13:02:49 +02:00
Lukas Matena
95ad76a0dc Wipe tower - fixed a long existent bug that sometimes resulted in inexact feedrate on the loading moves 2019-06-17 12:59:30 +02:00
tamasmeszaros
80fddb7aaf Merge branch 'master' into tm_builtin_pad 2019-06-17 12:17:01 +02:00
Lukas Matena
1152bd5a09 Fixup of 41164a9
The WipeTowerWriter did not now which tool is being used, so it limited the volumetric flow based on different filament settings
2019-06-17 11:22:17 +02:00
Lukas Matena
a643a22151 Wipe tower - renaming files (to conclude work from previous commit and not lose history of those files) 2019-06-17 10:26:33 +02:00
Lukas Matena
05e6dbbe4b Wipe tower - refactoring (removed the abstract WipeTower class)
- abstract class WipeTower and its descendant WipeTowerPrusaMM were merged into a single (non-abstract) WipeTower class
- all uses of WipeTower::xy struct were replaced by Eigen Vec2f (it is no longer necessary to be independent on libraries that PrusaSlicer uses)
- the WipeTowerPrusaMM.hpp/.cpp will be renamed in the next commit (hopefully it will retain its git history that way)
2019-06-17 10:16:07 +02:00
tamasmeszaros
ce22251707 Warning hunt session followup 2019-06-17 10:05:46 +02:00
Enrico Turri
ddb4c1ff3f Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer into et_perspective_camera 2019-06-17 09:34:25 +02:00
Enrico Turri
9ffd294f07 Fixed functions declaration template<class Tf> inline constexpr coord_t scaled(Tf val) and template<class Tf> inline constexpr Tf unscaled(coord_t val) to use constexpr on versions of Visual Studio which support it 2019-06-17 09:28:41 +02:00
tamasmeszaros
c5037540e9 Warning hunt session. 2019-06-14 18:17:17 +02:00
bubnikv
f8c5570155 Removed unnecessary copy / move constructors / assignment operators. 2019-06-14 15:47:40 +02:00
Lukas Matena
0eecfc6604 Wipe tower - removed the obsolete material_type enum
no longer necessary because the speed overrides that the enum controlled were recently removed
the comment in gcode is now just about appending the config string
2019-06-14 14:44:22 +02:00
Lukas Matena
678d0e18a7 WipeTowerIntegration class: print_z is not passed around, ToolChangeResult objects are aware of it 2019-06-14 14:43:40 +02:00
Lukas Matena
aee376762e Changed handling of priming extrusions to allow injection of filament and toolchange custom gcodes
The priming extrusions were handled separately from the rest of the wipe tower toolchanges. In order to be able to use the logic from previous commit for them (custom toolchange gcodes etc), some unpleasant code shuffling was needed
2019-06-14 14:42:07 +02:00
Lukas Matena
41164a9cb3 Multimaterial printing: Changed the way how custom gcodes are inserted
Each toolchange now emits:
- end filament custom gcode
- toolchange custom gcode; if not provided, a standard Tn command is inserted
- start filament gcode

Hopefully it is now consistent for SE/ME printers with/without the wipe tower
The priming line does not work - will be fixed in the next commit
2019-06-14 14:38:58 +02:00
Lukas Matena
9df93c0125 Mostly refactoring of the wipe tower improvements
- setting of the wipe tower parameters based od whether SE MM printer is selected is done in the WipeTowerPrusaMM constructor, so it does not distract in Print.cpp
- WipeTowerPrusaMM.cpp conditions checking for SE MM printer are now using a more descriptive const member variable, not the loading/unloading speeds (hopefully the functionality is the same)
2019-06-14 14:35:50 +02:00
Thomas Moore
da1aea889f Enable wipe tower for all multi-extruder configurations 2019-06-14 12:28:52 +02:00
Lukas Matena
079e63e190 The wipe tower now respects filament max volumetric flow
The odd commands that lowered the speed override values for PVA, FLEX etc. were removed

Now the wipe tower backups user speed override, sets it to 100%, does what is needed
and restores the old value when finished. There are no special cases - lowering
the speed for certain materials can be achieved by lowering the volumetric flow.
2019-06-14 12:28:52 +02:00