Commit Graph

1307 Commits

Author SHA1 Message Date
b39e1bb11f Merge remote-tracking branch 'remotes/origin/lm_wipe_tower_linear_advance' 2019-08-20 09:19:22 +02:00
5a13a36417 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
3e204ecb80 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
9ef3dd83e2 Fixed memory issues of BedShapeHintwhen using unions of non-trivial objects 2019-08-19 17:01:39 +02:00
5953d7b810 Extended the error message when empty layers are detected 2019-08-19 15:50:49 +02:00
8fcf81d9ee 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
61a9e78794 Set min SLA display resolution to 1x1 (see SPE-1000) 2019-08-19 10:58:44 +02:00
a02e218ccd Merge branch 'master' into tm_clang_mingw 2019-08-16 16:37:02 +02:00
2792e94938 Fix up build and clear dev output 2019-08-16 16:31:05 +02:00
a02a929b17 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
73b310a37c 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
1a45a8b31e Fix for issue #2765, arrange crash with custom beds 2019-08-15 16:15:17 +02:00
3f1926f984 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
1d0b4109cb Some reverts for commit 4cd4d2c8b5 2019-08-14 17:07:30 +02:00
b9a7444b1b Fixed wrong page selection for Printer Setting after application run 2019-08-13 17:09:42 +02:00
687b2bd1ae 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
3d8ca3058d Hotfix for crash when empty pad and support mesh is generated. 2019-08-09 17:13:18 +02:00
9b7dcf7ed6 Merge branch 'master' of https://github.com/Prusa3d/PrusaSlicer 2019-08-09 09:58:27 +02:00
1c119b7ba4 Only validate support_material_extrusion_width with supports
or raft enabled.
2019-08-09 09:58:05 +02:00
4f1992e4d6 Hotfix for crash with support disabled and pad enabled. 2019-08-08 19:12:37 +02:00
b09dce00e7 Partial revert of f474978db5
to fix Perl driven unit tests.
2019-08-08 15:24:23 +02:00
4ed77c88be 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
81c5e9d3a0 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
3191acfb06 Merge remote-tracking branch 'remotes/origin/vb_picking_fix' 2019-08-08 09:50:02 +02:00
679f1562c1 Merge branch 'master' into tm_zero_elev_ui 2019-08-07 15:28:17 +02:00
85e8354e1e Merge remote-tracking branch 'remotes/origin/master' into vb_picking_fix 2019-08-07 14:31:16 +02:00
f9e5c31fb8 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
65e6f07580 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
9d4b69ec02 ModelInstance::is_printable() takes into account printability
of the parent ModelObject.
2019-08-07 10:18:16 +02:00
dae058f454 Merge branch 'master' into tm_zero_elev_ui 2019-08-06 16:54:46 +02:00
9a9c03251a Added additional checkbox to enable zero elevation 2019-08-06 16:51:32 +02:00
3356c86cc7 Merge remote-tracking branch 'origin' into ys_printable_property 2019-08-06 16:28:25 +02:00
f1294e7a67 Save/load printable flag to/from 3mf and amf 2019-08-06 16:27:56 +02:00
80f3de1e65 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
c711a72e2a 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
0fcc6cb159 Merge remote-tracking branch 'origin' into ys_printable_property 2019-08-06 10:31:17 +02:00
ef94b179f5 Memory usage is now shown in SysInfoDialog on all three platforms 2019-08-05 20:17:29 +02:00
c11baee1fe Merge branch 'master' of https://github.com/Prusa3d/PrusaSlicer 2019-08-05 17:49:31 +02:00
f2aba5d27a 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
d78315aefb 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
bffa3c125d Merge branch 'master' of https://github.com/Prusa3d/PrusaSlicer 2019-08-05 14:30:42 +02:00
b0fc0cf49f 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
04bc566fd9 Added a memory logging function for Mac and Linux 2019-08-05 13:39:03 +02:00
ccf167b29c Merge remote-tracking branch 'origin/master' into ys_printable_property 2019-08-05 08:45:47 +02:00
313ad7bf00 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
9c95deef96 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
d0c9c28494 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
ff17ddd8c5 Fixed wrong naming of bottom infill pattern 2019-08-02 16:16:12 +02:00
e7234c1002 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
6087fea412 #2593 - Fixed loading of .zip.amf files when running from command line 2019-08-02 09:43:41 +02:00