Commit Graph

3993 Commits

Author SHA1 Message Date
tamasmeszaros
c4d50ea639 Add test obj and address for support under ground level if no elevation 2019-10-03 14:23:22 +02:00
tamasmeszaros
23a7e77a81 Eliminate some race conditions in sla support tree 2019-10-03 12:31:25 +02:00
tamasmeszaros
95e22d8fd4 Add method for bridge addition with Head parameter to fill the bridge_id 2019-10-03 10:22:25 +02:00
YuSanka
63f31ce4db Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer 2019-10-02 22:51:18 +02:00
YuSanka
b3603a09fc Fixed a bug: Wrong save of a preset if the preset is already exist.
Step to repro:
1. Select system "Some_preset" preset
2. Make some changes
3. Save preset with "Some_preset - Copy" name.
=>  "Some_preset - Copy" is selected, there is/are marked option(s) only different from system preset.
repeate 1-3 steps
=>  "Some_preset - Copy" is selected, there is/are marked option(s) different from DEFAULT preset.
2019-10-02 22:50:55 +02:00
tamasmeszaros
3f698c4ccf Enable full concurrency for support tree generation. 2019-10-02 16:33:13 +02:00
YuSanka
8bc569284e Corrected editor position and size 2019-10-02 16:14:40 +02:00
YuSanka
9e01740db6 More improvements 2019-10-02 15:02:13 +02:00
tamasmeszaros
8ca7e56d0f Fix tests on all platforms
Try to link tests on Mac.


Fix inaccurate pad brim size


fix build on mac (attempt 2)


Fixes for support tree faults and race conditions in release mode.


Fix crashing test executable on gcc 4.9


fix warning on msvc
2019-10-02 14:55:16 +02:00
tamasmeszaros
d5dcba00b1 Time conversion functions with tests.
Fixes issue with incorrect characters in time strings on UI.
Fix platform dependency


Fix return value with incorrect strings.


Just use strptime and strftime on all platforms.

Emulate strptime on msvc... because they don't have it and their get_time is buggy.
2019-10-02 14:44:11 +02:00
tamasmeszaros
f29e18dad2 Fix crashing test executable on gcc 4.9 2019-10-02 14:42:28 +02:00
YuSanka
4171a6a80d Improvements for 15902766d0 2019-10-02 14:08:36 +02:00
tamasmeszaros
fa81b961c5 Fix compilation without pch. 2019-10-02 13:56:41 +02:00
YuSanka
d87f2d11ae Fix OSX build 2019-10-02 12:17:02 +02:00
YuSanka
15902766d0 Workaround for extruder editing under OSX 2019-10-02 11:53:50 +02:00
Enrico Turri
fbe38fb2a4 #3008 - Generate all mipmaps up to size 1x1 2019-10-02 10:57:07 +02:00
Enrico Turri
6293ff8ccd Fixed crash into GCodeTimeEstimator::post_process() while processing custom end g-code 2019-10-02 09:38:19 +02:00
Enrico Turri
c5a5e6a61d Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer into et_git_3010 2019-10-02 08:13:11 +02:00
YuSanka
a0b46a4019 Merge remote-tracking branch 'origin/master' into ys_extruders_color 2019-10-01 18:20:59 +02:00
YuSanka
d7ebc4de5b Added color for extruder 2019-10-01 18:19:28 +02:00
bubnikv
546ad99306 Merge branch 'master' of https://github.com/Prusa3d/PrusaSlicer 2019-10-01 17:17:20 +02:00
bubnikv
564eddd99d FDM Print refactoring:
Layer newly remembers bounding boxes of slices,
the bounding boxes are used by G-code generator & newly the support
generator.
Slices are stored as ExPolygons, not ExPolygonCollection.
2019-10-01 17:17:08 +02:00
tamasmeszaros
be7428d66e sla::Raster interface clarified and covered with tests.
Also renamed sla::SupportTreeAlgorithm to SupportTreeBuildsteps.
2019-10-01 14:58:37 +02:00
tamasmeszaros
705e82ec8e Deeper test coverage for support tree generation.
Restructuring for testability.
2019-10-01 14:58:37 +02:00
tamasmeszaros
e675a5d5c6 Reworked pad creation algorithm with new parameters:
* brim size
* force pad around object everywhere
2019-10-01 14:58:37 +02:00
tamasmeszaros
9d775d0a43 Make loading of obj files into TriangleMesh possible. 2019-10-01 14:58:37 +02:00
tamasmeszaros
e4247f9856 libslic3r core enhancements
* ClipperUtils extended with ExPolygon to clipper paths conversion and improved PolyTree traversal
* Added ExPolygon constructor with Polygon argument
* Removed BoundingBox warnings on clang
* Removed Geometry warnings on clang
2019-10-01 14:58:37 +02:00
tamasmeszaros
710adca6fe Don't disable pad around object parameters if supports are disabled. 2019-10-01 14:57:37 +02:00
tamasmeszaros
b6f447980a Add upper limit on 1.0 to sla display gamma parameter. 2019-10-01 14:44:07 +02:00
YuSanka
45b81f1805 Fixed "unhandled unknown exception", when try to change an extruder count.
Side effect after 86b258f727.
2019-10-01 14:27:51 +02:00
bubnikv
0e325824b1 Merge branch 'master' of https://github.com/Prusa3d/PrusaSlicer 2019-10-01 13:41:42 +02:00
bubnikv
6a07b231e1 Fixed a crash with a layer range modifier containing no slicing layer. 2019-10-01 13:41:22 +02:00
Lukas Matena
38d8854a48 Print::validate() - check for empty print has been moved at the beginning of the function
This prevents a crash when the print is empty and the wipe tower enabled - validation of the wipe tower attempted to access extruders().front(), which was empty.
No other checks need to be done with the empty print anyway.
2019-10-01 12:48:58 +02:00
Enrico Turri
8d53c5e978 #3010 - Added tech ENABLE_GIT_3010_FIX - GCodeAnalyzer and GCodeTimeEstimator modified to properly process gcode lines G92 2019-10-01 09:48:42 +02:00
bubnikv
93a157e26c Merge branch 'master' of https://github.com/Prusa3d/PrusaSlicer 2019-09-30 16:25:31 +02:00
bubnikv
272479826f Refactoring of the G-code preview for lower memory allocation
and for separation of concerns:

The final G-code preview no more uses ExtrusionPaths structure
to hold the G-code path data extracted by parsing the G-code.
Instead, the ExtrusionPath class has been trimmed down back to
the original size before the G-code preview was introduced,
and a new GCodePreviewData::Extrusion::Path class was created to hold
the additional path data as the extruder ID, color change ID
and fan speed.
2019-09-30 16:25:26 +02:00
Vojtech Kral
eb93d2a32d Merge branch 'master' into materials 2019-09-30 16:12:48 +02:00
YuSanka
c07a193b4e Implemented BitmapChoiseRenderer 2019-09-30 14:34:29 +02:00
YuSanka
f5593c05aa Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer 2019-09-30 14:04:45 +02:00
YuSanka
904bbcc006 Fix of SPE-1035 (Wrong filament color updating for multi-material print) 2019-09-30 13:59:26 +02:00
bubnikv
b425ee50a9 Merge remote-tracking branch 'remotes/origin/et_pull_2922' 2019-09-30 10:23:16 +02:00
Lukas Matena
5ded376fe2 An attempt to fix #2997
More fixes might be needed on the other platforms
2019-09-28 09:57:26 +02:00
bubnikv
0abde9a2a8 Return MultiPoint::first_point() by reference. 2019-09-27 19:47:30 +02:00
bubnikv
6d11bfe96a Fixing C++ issues, that the Visual Studio compiler did not report. 2019-09-27 19:18:35 +02:00
bubnikv
debd9e2f81 One more try, fixing a missing parameter. 2019-09-27 19:07:07 +02:00
bubnikv
50d3894e32 Fix of the ShortestPath.hpp interface: Provide non-move variant. 2019-09-27 18:47:08 +02:00
bubnikv
85ea0396a4 Merge branch 'master' of https://github.com/Prusa3d/PrusaSlicer 2019-09-27 18:23:36 +02:00
bubnikv
331c187b39 Rest of the path chaining has been replaced with the new algorithm.
PolylineCollection.cpp/hpp was removed, use Polylines instead.
Various first_point() / last_point() now return references, not copies.
2019-09-27 18:17:21 +02:00
Lukas Matena
d57a09558e Several fixes of previous commits related to KDTreeIndirect.hpp and ShortestPath.cpp/.hpp 2019-09-27 13:30:07 +02:00
YuSanka
c370fccd8b Changed default values.
And bottle_volume is preferred to recalculation instead of bottle_weight
2019-09-27 12:08:08 +02:00
Lukas Matena
5123673b3a CMakeLists: filename fix so everything works on case-sensitive filesystems 2019-09-27 11:42:52 +02:00
Lukas Matena
661c91a821 Fixing Linux build
GCC 4.8 does not fully support C++11 and in-class char array initialization
2019-09-27 11:31:16 +02:00
bubnikv
4b35ebe6e5 Merge branch 'master' of https://github.com/Prusa3d/PrusaSlicer 2019-09-27 09:52:57 +02:00
bubnikv
e65ab90c16 Fix of G-code path planning: Infill lines were incorrectly ordered
for islands with another islands in their holes.

Improvement of chaining of infill lines for 3D honeycomb, Gyroid and
Honeycomb infill: New TSP chaining algorithm is used.
2019-09-27 09:51:07 +02:00
bubnikv
d06831076d WIP: Consolidation of shortest path calculations,
various chaining algorithms are replaced with the improved TSP
algorithm.
2019-09-26 17:30:03 +02:00
bubnikv
10eecb2cab Reworked Traveling Salesman Problem code for simplicity and robustness.
The TSP algorithm is newly used for planning of the printing order
of objects AND their instances.
2019-09-26 16:39:50 +02:00
YuSanka
82bc243281 Implemented possibility to set a resin cost 2019-09-26 16:36:31 +02:00
bubnikv
8d4dd294b2 Merge branch 'dev' of https://github.com/Prusa3d/PrusaSlicer into dev 2019-09-26 09:44:53 +02:00
bubnikv
41495a932a Introduction of a greedy Traveling Salesman Problem algorithm,
producing better shortest path estimate than the "closest next neighbor"
heuristics. The new greedy algorithm utilizes KD tree for closest
end point search, and builds a graph to detect loops.

PerimeterGenerator newly uses the optimized TSP algorithm.

ExtrusionEntity has been refactored / simplified.
2019-09-26 09:44:38 +02:00
YuSanka
1a03b664b9 Some changes for alignments in manipulation panel 2019-09-25 15:04:39 +02:00
Enrico Turri
6f8a9bc1ff Fixed visual hints in 3D scene not disappearing when tabbing out of size z field in object manipulators sidebar 2019-09-25 13:05:18 +02:00
YuSanka
f6996b7dda Try to fix Linux build 2019-09-25 12:45:39 +02:00
Lukas Matena
dbc51a140d Fixed erroneous use of logical OR where bitwise OR was meant
Also, PrintBase::SlicingStatus enum had two entries assigned to 0 - removed the one that was never used
2019-09-25 12:18:30 +02:00
YuSanka
efb9ef37f6 Merge remote-tracking branch 'origin/master' into ys_manipulation_panel_rw 2019-09-25 11:33:19 +02:00
Enrico Turri
fdbe339622 Fixed gizmo scale for objects added to scene using the new context menu 2019-09-25 11:25:14 +02:00
YuSanka
6faf67d90c Add binding for ManipulationEditors 2019-09-25 11:25:05 +02:00
Lukas Matena
1d18339e62 PRUS.cpp: Fixed an always-true condition in extract_model_from_archive
SupportMaterial.cpp: Simplified one condition (also solves a -Wmaybe-uninitialized warning on gcc)
2019-09-24 18:09:48 +02:00
Lukas Matena
b67d8c1614 Fixed memsetting non-trivially-copyable types
Types stl_stats, stl_normal and SurfaceFillParams should not be zeroed by memset
This is not correct and also triggered warnings on gcc
2019-09-24 17:09:07 +02:00
Lukas Matena
7861fa5086 Whitespace changes to supress misleading indentation warnings
These appear in newer gcc when spaces and tabs are mixed
2019-09-24 16:01:01 +02:00
YuSanka
b2e7081d31 Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer 2019-09-24 14:33:20 +02:00
YuSanka
9607fbeb6d Fix of SPE-1027 2019-09-24 14:32:59 +02:00
Enrico Turri
2fd5044460 Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer 2019-09-24 14:13:22 +02:00
Enrico Turri
7c1706f7ee Follow-up of f4910cafed -> Fix extended to Mac 2019-09-24 14:13:03 +02:00
Lukas Matena
c1e3be9b27 MeshUtils.cpp: MeshRaycaster is now aware of the clipping plane 2019-09-24 12:58:12 +02:00
Enrico Turri
a68a72a660 Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer 2019-09-24 09:11:43 +02:00
Enrico Turri
e6604afd05 #2972 - Fixed selection after adding an instance with autocenter active 2019-09-24 09:11:27 +02:00
Jason Tibbitts
197a1f95ff Relocate declaration of stl_internal_reverse_quads
On little-endian hosts, stl_internal_reverse_quads will be called before
it is declared.  Move the declaration up to the beginning of the file to
fix build breakage seen on an s390x host.
2019-09-24 08:54:35 +02:00
YuSanka
a234193dea Fixed localization for "Configuration Wizard" menu item 2019-09-23 16:29:07 +02:00
Enrico Turri
2dc9949a4c ENABLE_ENHANCED_RELOAD_FROM_DISK set as default 2019-09-23 15:35:49 +02:00
Enrico Turri
82a52e8b21 #2922 - Port of commit: f42edd35ce by jschuh 2019-09-23 14:56:27 +02:00
YuSanka
d90a27d5f8 Merge remote-tracking branch 'origin' into ys_manipulation_panel_rw 2019-09-23 14:37:06 +02:00
YuSanka
c0c937425f Added missed comment to 7e060f84bd 2019-09-23 14:24:53 +02:00
Enrico Turri
1115e77b38 ENABLE_ENHANCED_RELOAD_FROM_DISK -> Fixed export/import to/from .amf to keep compatibility with 3rd part software. 2019-09-23 13:54:49 +02:00
Enrico Turri
4a45c1aa41 Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer into et_reload_from_disk 2019-09-23 12:34:18 +02:00
Enrico Turri
5eb4692442 ENABLE_ENHANCED_RELOAD_FROM_DISK -> Fixed export/import to/from .3mf to keep compatibility with 3rd part software. 2019-09-23 12:33:21 +02:00
tamasmeszaros
a6f5fe7bea Fix arrange crash with incorrect geometries. Guard the case with tests. 2019-09-23 11:59:44 +02:00
YuSanka
4aec14ddab Replace "mm3/s" with "mm³/s" in preview legend for a "Volumetric flow rate" 2019-09-23 11:11:43 +02:00
YuSanka
4e22761f95 Fix of #2977 2019-09-23 10:17:53 +02:00
Enrico Turri
c0576a8770 Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer into et_reload_from_disk 2019-09-23 08:27:01 +02:00
Vojtech Kral
927ad5776c avrdude: Cherry-pick rev 1421 from upstream:
Submitted by Reinhard Max patch #8311: Add IPv6 support to the
-Pnet:host:port option * ser_posix.c (net_open):
Rewrite to use getaddrinfo() rather than gethostbyname()

Fix #2918
2019-09-20 17:17:07 +02:00
Lukas Matena
656569b0e9 Fix of https://github.com/prusa3d/PrusaSlicer/issues/2953
printf-like function argument mismatch: num was long, which was obfuscated by the auto keyword
2019-09-20 16:47:10 +02:00
YuSanka
89ebf1f1e8 Merge branch 'dev' of https://github.com/prusa3d/PrusaSlicer into dev 2019-09-20 11:30:53 +02:00
YuSanka
7e060f84bd Forcing of explicit SetWidth for the columns under OSX, as an attempt to fix a narrow column width on 4(5)K monitors under OSX 2019-09-20 11:30:29 +02:00
Enrico Turri
ac305a77b3 Merge branch 'dev' of https://github.com/prusa3d/PrusaSlicer into dev 2019-09-20 11:19:24 +02:00
Enrico Turri
d66bf7e1e1 Follow-up of 8aaff08355 -> Do not show the new context menu when the user pans the scene + cleanup 2019-09-20 11:19:06 +02:00
Lukas Matena
b241ba16ed Fixed layer profile equality check for wipe tower validation (fixup of b43003d) 2019-09-20 10:53:50 +02:00
YuSanka
a27026aa03 Merge branch 'dev' of https://github.com/prusa3d/PrusaSlicer into dev 2019-09-20 09:58:33 +02:00
YuSanka
8aaff08355 Added Possibility to create "shape" as an independent object from 3dScene,
using right click on empty place
2019-09-20 09:57:27 +02:00
Enrico Turri
9e09c52ab0 #2948 - Max zoom takes in account custom bed model size 2019-09-20 09:53:35 +02:00
bubnikv
110d5b9d56 Merge branch 'dev' of https://github.com/Prusa3d/PrusaSlicer into dev 2019-09-19 17:16:43 +02:00
bubnikv
6ce1011a09 Slic3r -> PrusaSlicer in config snapshot dialog. 2019-09-19 17:16:37 +02:00
YuSanka
e34ef1dd07 Merge remote-tracking branch 'origin/dev' into ys_manipulation_panel_rw 2019-09-19 15:39:13 +02:00
YuSanka
29f3c938e6 Fix of SPE-1026 (Height range value works differently if you press enter and if you leave textbox)
Related to GH #2946
2019-09-19 15:28:36 +02:00
YuSanka
381735581b Merge branch 'dev' of https://github.com/prusa3d/PrusaSlicer into dev 2019-09-19 14:12:12 +02:00
YuSanka
ddf37d3b01 Fix under OSX for 584b37513f 2019-09-19 14:11:56 +02:00
Enrico Turri
0de8245432 Merge branch 'dev' of https://github.com/prusa3d/PrusaSlicer into dev 2019-09-19 14:03:05 +02:00
Enrico Turri
355a7d6a8c Fixed empty filename when trying to export a plate where no object is selected and no object is printable 2019-09-19 14:01:17 +02:00
Enrico Turri
74747226f7 ENABLE_ENHANCED_RELOAD_FROM_DISK
1) Modified .zip.amf import/export to save/load volume matrices and source data

2) Incremented .zip.amf version to 3
2019-09-19 12:39:59 +02:00
YuSanka
91311fc0a0 Merge branch 'dev' of https://github.com/prusa3d/PrusaSlicer into dev 2019-09-19 12:30:35 +02:00
YuSanka
584b37513f Implemented possibility to create "shape" as an object (#2865) 2019-09-19 12:30:16 +02:00
bubnikv
80c5eaacdf Merge remote-tracking branch 'remotes/origin/dev' into vk-materials 2019-09-19 11:49:49 +02:00
Enrico Turri
3a40565d03 Added tech ENABLE_ENHANCED_RELOAD_FROM_DISK
1) Reworked void Plater::priv::reload_from_disk() to be more general

2) Added source data to class ModelVolume

3) Modified .3mf import/export to save/load volume matrices and source data

4) Incremented .3mf version to 2
2019-09-19 09:09:11 +02:00
bubnikv
40e5fb5bb9 Merge branch 'dev' of https://github.com/Prusa3d/PrusaSlicer into dev 2019-09-19 08:57:04 +02:00
bubnikv
94212fa2a9 Another fix of admesh on big endian architectures, fixes #2879 2019-09-19 08:56:47 +02:00
YuSanka
67d7809418 Fixed font size and layouts for ObjectManipulation panel under OSX 2019-09-19 08:44:19 +02:00
YuSanka
c9c407cc2b Rewrote UI for ObjectManipulation without using of OptionsGrope 2019-09-18 15:10:36 +02:00
Lukas Matena
76a657ce52 Plater.cpp - better added a range-check when selecting filament color in purging volumes dialog 2019-09-18 12:54:21 +02:00
Lukas Matena
741e98804c Purging volumes dialog now uses filament colour in case extruder color is undefined 2019-09-18 11:47:19 +02:00
Vojtech Kral
107ff6fd36 Materials: Cleanup 2019-09-17 17:16:15 +02:00
Vojtech Kral
cb1ee5ce55 ConfigWizard: Add view mode setting page 2019-09-17 15:52:26 +02:00
Enrico Turri
cd7895065a Fixed typo 2019-09-17 15:48:39 +02:00
Enrico Turri
f4910cafed Fixed selection after adding a modifier by loading it from file 2019-09-17 15:30:54 +02:00
Lukas Matena
dd7eb0b186 Merge branch 'lm_raycasting_refactoring' into dev 2019-09-17 14:59:14 +02:00
Lukas Matena
6bcafd7c83 SLA gizmo no more uses IGL code directly, all was moved to the new MeshRaycaster class 2019-09-17 14:57:57 +02:00
Lukas Matena
1dfd8a0e62 MeshRaycaster class is now used in SLA gizmo when selecting by rectangle 2019-09-17 14:57:54 +02:00
Lukas Matena
3694bf3da9 Added functions get_hit_pos, get_hit_normal, ready to implement intersect_ray 2019-09-17 14:57:49 +02:00
Lukas Matena
b6292247e8 Unproject on mesh in the SLA gizmo is now performed by the MeshRaycaster class 2019-09-17 14:57:45 +02:00
YuSanka
0890c1417a Merge branch 'dev' of https://github.com/prusa3d/PrusaSlicer into dev 2019-09-17 13:42:06 +02:00
YuSanka
93aa5ac6ce Fixed re-scaling under MSW for Layers editing
+ Clean code in GUI_ObjectManipulation.cpp
2019-09-17 13:41:44 +02:00
Vojtech Kral
c5a67ff931 WIP: filament/material filtering per selected printers 2019-09-17 13:20:06 +02:00
Vojtech Kral
9a465514ff Filament and material default installation based on enabled printers 2019-09-17 13:20:06 +02:00
Vojtech Kral
270008a3fd Add material_type config option for SLA materials, use in Wizard 2019-09-17 13:20:06 +02:00
Vojtech Kral
235b659cf9 WIP: ConfigWizard: 3rd party bundle installation roughly done 2019-09-17 13:20:06 +02:00
Vojtech Kral
dba9925c4e Move ConfigWizard instance in GUI_App, lazy-initialized,
add filament/material installation item in Sidebar combo boxes
2019-09-17 13:20:06 +02:00
Vojtech Kral
87b7b1cc1d Load default filament/material selections from vendor profiles 2019-09-17 13:20:06 +02:00
Vojtech Kral
34b3548102 Filaments and materials selection/installation 2019-09-17 13:20:06 +02:00
Enrico Turri
a93e63e296 Fixed object shifted after saving to/reloading from .3mf and .zip.amf a multivolume object with printable parts moved by user 2019-09-17 12:50:54 +02:00
Vojtech Kral
8e11a7b895 PresetUpdater: Fix: Sanitize downloadedsemver, fix #2927
Use HTTPS for the slicer app version url
2019-09-16 18:02:14 +02:00
bubnikv
83b6b82188 Refactored ExtrusionEntityCollection::flatten() 2019-09-16 16:35:08 +02:00
bubnikv
abf91c0327 Merge branch 'dev' of https://github.com/Prusa3d/PrusaSlicer into dev 2019-09-16 15:38:37 +02:00
YuSanka
13bde53955 Call update_config_values after deleting of a overridden option 2019-09-16 12:05:56 +02:00
YuSanka
a12e6a7bde More clear identification if is there object selected 2019-09-16 11:55:05 +02:00
YuSanka
284355d378 Fix of #2878 (endless warning loop in configuration update) 2019-09-16 10:22:26 +02:00
bubnikv
ae3a3029c0 Merge remote-tracking branch 'remotes/origin/master' into dev 2019-09-13 18:58:39 +02:00
bubnikv
d86cf1e116 Fix of a regression in wipe tower generator:
Return to the known position after custom tool change G-code.
2019-09-13 18:56:37 +02:00
bubnikv
145cf294c9 Merge branch 'dev' of https://github.com/Prusa3d/PrusaSlicer into dev 2019-09-13 16:21:48 +02:00
bubnikv
a9182fb0b3 Merge branch 'master' into dev 2019-09-13 16:19:35 +02:00
bubnikv
345d73e0d6 Merge branch 'master' of https://github.com/Prusa3d/PrusaSlicer 2019-09-13 16:17:23 +02:00
bubnikv
ea8b6262cf Introduction of ClipperLib_Z: The Clipper library compiled with support
of the Z coordinate, compiled in the ClipperLib_Z namespace.

Update of Lukas's new brim clipping:
All the brim contours are now clipped by the ClipperLib_Z library
in one shot.
2019-09-13 16:16:37 +02:00
Lukas Matena
ee7132a23d Fixup of 4f89672 + allowing negative support_contact_z 2019-09-13 15:47:00 +02:00
bubnikv
4f89672816 Fixed false positives of missing layers due to support layer snapping
to avoid layers thinner than min_layer height, and possibly due to
the fact, that empty support extrusions may get generated
for support layers with non-empty support polygons.

Fix of Empty layers detection added to GCode.cpp (6ab1cec)
2019-09-13 15:18:42 +02:00
Lukas Matena
70c0c87598 Renamed MeshClipper.cpp/.hpp to MeshUtils.cpp/.hpp
More helper classes like the MeshClipper could live here
Moved ClippingPlane class in here to start
2019-09-13 12:03:53 +02:00
Lukas Matena
9782701dd4 Calculating the transformations is now only performed by the MeshClipper
Attempted to get mirroring right (that never worked correctly with the clipping plane in the sla gizmo)
The transformation of the support mesh is kind of a mystery to me, hopefully it is right
Also cleaned the code a bit (removed commented-out code, unused variables, etc)
2019-09-13 12:03:53 +02:00
Lukas Matena
546917830b Initial implementation of MeshClipper class
So far the work is shared between the old code in GLGizmoSlaSupports.cpp and the new class
2019-09-13 12:03:53 +02:00
Lukas Matena
cf23146ee3 Refactoring the SLA clipping plane
The plane is now internally stored as a plane in world coordinates
2019-09-13 12:03:53 +02:00
tamasmeszaros
177a96a768 Fix arrange crash with ASAN 2019-09-13 11:01:02 +02:00
bubnikv
bb896b4c13 Merge remote-tracking branch 'remotes/origin/lm_brimskirt' 2019-09-12 15:53:20 +02:00
Enrico Turri
7fe691f14e Merge branch 'et_reload_from_disk' of https://github.com/prusa3d/PrusaSlicer into dev 2019-09-12 10:46:32 +02:00
Enrico Turri
724cc19ae5 Fixed object position after reload from disk 2019-09-12 10:44:38 +02:00
bubnikv
b4f2df6a98 Merge remote-tracking branch 'remotes/origin/master' into dev 2019-09-12 10:19:09 +02:00
bubnikv
6f4fff1b29 Fix of 2.1.0-rc2 Fails to open "certain' STL files #2906 2019-09-12 10:16:52 +02:00
Enrico Turri
22ab022088 Merge branch 'et_reload_from_disk' of https://github.com/prusa3d/PrusaSlicer into dev 2019-09-11 15:36:23 +02:00
Enrico Turri
c55a463c93 Do not show intermediate states in objects list while reloading from disk 2019-09-11 15:31:30 +02:00
Enrico Turri
26f3af4b16 Fixed modifiers after reload from disk 2019-09-11 15:02:57 +02:00
bubnikv
15c8b579b2 Refactoring of ExtrusionEntity / ExtrusionEntityCollection:
Iterator loops replaced with C++11 loops.
Fixed clone() methods to return an ExtrusionEntity*.
PerimeterGenerator now uses move semantics on ExtrusionEntity a little
bit more.
2019-09-11 13:25:50 +02:00
tamasmeszaros
c37ec7463f Add new config values to SL1 zip file config.ini
All requested config values are written into SL1 ini file inside the zip

* TIme.hpp and Time.cpp is now part of libslic3r instead of libslic3r_gui
* Updated time manipulation function: separate timestamp_local_str and timestamp_utc_str
* timestamp_utc_str is used in header_slic3r_generated(). Gcode now contains UTC timestamps
2019-09-11 13:10:23 +02:00
bubnikv
b3f27b8fb9 Fixed typo in comments 2019-09-11 11:38:17 +02:00
bubnikv
0989cb8296 Refactoring of PerimeterGenerator:
header interface was reduced,
compiler warnings removed.
2019-09-11 11:37:48 +02:00
Enrico Turri
af77eca9df Follow-up of 44c3493f7d -> error message logged only for multi-extruder printers 2019-09-11 10:02:27 +02:00
Enrico Turri
b383d9581a Merge branch 'dev' of https://github.com/prusa3d/PrusaSlicer into et_reload_from_disk 2019-09-11 09:01:44 +02:00
Enrico Turri
3835257ec2 Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer into et_reload_from_disk 2019-09-11 09:01:34 +02:00
Enrico Turri
7e5043961a Added missing include 2019-09-11 08:51:36 +02:00
Enrico Turri
44c3493f7d GCodeAnalyzer: Fixed a crash when encountering an invalid toolchange 2019-09-11 08:39:29 +02:00
bubnikv
9bdc5b7939 Merge remote-tracking branch 'remotes/origin/master' into dev 2019-09-10 19:09:41 +02:00
bubnikv
b9389f2d39 Some C++11 refactoring 2019-09-10 19:09:37 +02:00
bubnikv
413e737d7e Fix of previous infill refactoring. 2019-09-10 19:08:04 +02:00
bubnikv
246dc64c99 Fix of "Bridging and gap fill are parsed incorrectly when infill is set to 0" #1476
The gap fill was disabled for zero infill.
Now the gap fill is enabled in between the perimeters, but disabled between
the inner-most perimeter and infill in case the infill is set to zero.

Also in case there are multiple infill regions inside a perimeter,
the mutliple infills are considered as non-zero if at least one infill
is non-zero, therefore the gap fill will be added inside the inner-most
perimeter.
2019-09-10 19:03:37 +02:00
tamasmeszaros
84e8081413 Fix compilation on OSX 2019-09-10 14:00:48 +02:00
tamasmeszaros
1c20c4c43d Fix arrangement of objects larger than the print bed. Issue #2897 2019-09-10 13:31:29 +02:00
Lukas Matena
2fef16c39a Fix of #1266 and #2258
In case there were empty object layers supposed to be floating on supports which were set to use a specific extruder, wipe tower was missing layer required to do the toolchange, leading to a crash
Such cases are now detected and layers that need it are additionally assigned as wipe tower layers

Also tracked as SPE-526
2019-09-10 13:13:21 +02:00
Lukas Matena
4fc20090c8 GUI_ObjectList.cpp: Max layer height defaults to 0.75*nozzle_diameter as it should (#2892) 2019-09-10 12:34:03 +02:00
Lukas Matena
c5f78dd6e2 Some more warnings fixed (WipeTower.cpp/.hpp) 2019-09-10 12:08:43 +02:00
Lukas Matena
86b258f727 Fixed many warnings in following files:
src/slic3r/Config/Snapshot.cpp
src/slic3r/GUI/Field.cpp
src/slic3r/GUI/GLToolbar.cpp
src/slic3r/GUI/GUI_ObjectList.cpp
src/slic3r/GUI/GUI_ObjectList.hpp
src/slic3r/GUI/Plater.cpp
src/slic3r/GUI/Plater.hpp
src/slic3r/GUI/PresetBundle.cpp
src/slic3r/GUI/Tab.cpp
src/slic3r/GUI/wxExtensions.cpp
2019-09-10 12:08:43 +02:00
Lukas Matena
a62bba2508 CoolingBuffer.cpp: Fixed a crash when encountering an invalid toolchange
This can happen if the user enters invalid toolchange through the custom gcodes
Such toolchange is now simply ignored by the CoolingBuffer, exporting gcode is NOT stopped, a log error is emitted
2019-09-10 11:46:18 +02:00
Enrico Turri
27f01bb09e Fixed instance printable property after reload from disk 2019-09-10 11:16:59 +02:00
bubnikv
4585618aea Fix of "Bridge flow ratio doesn't trigger reslicing of support" #2359 2019-09-09 18:09:40 +02:00
bubnikv
6ba43ebacb Merge remote-tracking branch 'remotes/origin/master' into dev 2019-09-09 17:49:07 +02:00
bubnikv
ac7bae8c5d Merge branch 'dev' of https://github.com/Prusa3d/PrusaSlicer into dev 2019-09-09 17:47:41 +02:00
bubnikv
5c72eecf26 Fix of "Strange behavior on bridge detection" #1482
The very first slicing step needs to be invalidated if support is
enabled or disabled while the soluble supports are configured,
as the bridging is disabled for soluble supports, while the bridging
is enabled with supports disabled.
2019-09-09 17:47:29 +02:00
bubnikv
ee928f5f4d Replaced Perl style infill type enums with C++ enums in comments. 2019-09-09 16:47:15 +02:00
bubnikv
735f5146e9 Fix of d146a0237e
(reworked infill generator to merge regions with the same properties).
2019-09-09 16:44:29 +02:00
Vojtech Kral
f747b97564 FirmwareDialog: Attempt to fix window double close assertion #2619 2019-09-09 16:41:14 +02:00
Lukas Matena
4dbc8b22a5 Updated tooltip 2019-09-09 16:39:26 +02:00
Lukas Matena
97a02f4412 Merge branch 'lm_custom_toolchange' 2019-09-09 16:12:09 +02:00
tamasmeszaros
796d0fbd81 Fix typo 2019-09-09 16:08:19 +02:00
Lukas Matena
822bc7a91c Fix of previous commit, tooltip update 2019-09-09 16:02:39 +02:00
Enrico Turri
6507b7bf39 Fixed gizmos update after objects loading 2019-09-09 15:55:04 +02:00
Enrico Turri
eae02f6cad Fixed handling of mouse left up event when moving an object while the place on face gizmo is active 2019-09-09 14:56:55 +02:00
Lukas Matena
499fdeddd1 Custom toolchange gcode is searched for tool-changing command
If the custom toolchange gcode switches extruder to the one that is expected, PrusaSlicer does not issue its own T command
Otherwise, this command is inserted just after the custom gcode, even in case it is not empty
This should prevent issues such as #2884 and #2886 from being reported
2019-09-09 13:05:18 +02:00
Enrico Turri
749a1863e5 Fixed rotate gizmo hovering 2019-09-09 12:11:49 +02:00