Commit Graph

49 Commits

Author SHA1 Message Date
bc412ea4aa WIP: Reworked the infill generator to merge areas with the same
properties.

Note for Vojtech:
Review src/libslic3r/Fill/Fill.cpp once again,
add test for G-code generator properties (extrusion speed, cooling?)

Fixes Modifier slice/move efficiency #1005
2019-09-04 16:11:16 +02:00
f5e17835d6 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
d2c908ef7f Merge branch 'master' into lm_warnings 2019-07-15 13:26:55 +02:00
ff69c030d7 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
fa2cb5d501 Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer into et_color_print_times 2019-07-08 08:45:11 +02:00
96ea3c6de8 Color change time estimates 2019-07-08 08:40:20 +02:00
9bbe65c53e Fixed warnings in libslic3r 2019-06-25 16:04:29 +02:00
be350a00f0 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
436b9c40fe Integrated the new layer height spans with configs into the backend.
Fixed some compiler warnings.
2019-06-20 16:15:09 +02:00
cc5a47d96c 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
b8fe1fabf3 Fixed unit tests when run with range checks on std::vector
There was a bug in unit tests that led to generating the wipe tower with non-normalized preset.
This caused out-of-bounds access into max_layer_height vector in fill_wipe_tower_partitions.
The problem surfaced in https://github.com/prusa3d/PrusaSlicer/issues/2288.
I quickly patched additional normalization of the preset to prevent this from happening.

Also, an assert in the same function turned out to trip on one of the tests.
This one was commented out for now and will (hopefully) be looked into later.

Function Print::apply_config was renamed to apply_config_perl_tests_only so everyone
sees its current purpose and does not mistake it for the more important Print::apply.
2019-05-22 16:48:20 +02:00
4b6383a512 Changed the G-code export and send to OctoPrint GUI code
to store the G-code next to the project file if it exists,
and to process the project name with the PlaceholderParser.
2019-05-17 16:27:00 +02:00
d8a22aa2d9 Fix of "Variable layer height feature breaks after rotating part #2073"
There was an approximate bounding box used at the GUI, while a snug
bounding box was used at the back end, causing invalidation
of the variable layer height editing profile on rotated objects.

A snug bounding box around the first instance is now cached.
2019-04-13 14:15:54 +02:00
322d2a1fab Reworked the command line interface based on the current state
of the upstream.
Thanks @alexrj, @lordofhyphens for the original code of slic3r.cpp
2019-03-13 15:44:50 +01:00
56daeab54f Implemented clipping of parts of multi-part objects in the order
they are presented in the UI.

Parallelized the slice stealing when splitting regions with modifier meshes.

Rewrote Layer::make_perimeters() to C++11 loops.
2019-03-06 10:21:10 +01:00
49c0f383b6 Fix of caching of the SlicingParamerters at PrintObject 2019-03-05 14:05:58 +01:00
bda2580560 Implemented caching of SlicingParameters by PrintObject 2019-03-04 15:28:04 +01:00
bd4108cd5c Fixed update on reset of the variable layer height profile.
Fixed update of the layer height profile on PrintObject when changing profiles.
Fixed crash due to the layer height editing refactoring & wipe tower.
2019-01-23 14:00:03 +01:00
b76f438975 WIP Restoration of the layer editing. 2019-01-21 10:06:51 +01:00
818e0cde7f Fixed many errors in background processing synchronization and update.
Fixed couple of compiler warnings.
2018-12-22 10:02:42 +01:00
b735a44f05 Fix of SPE-607 2018-12-17 19:46:36 +01:00
ed8d8e30b9 Fix of SPE-607
Part changed to Support enforcer is not sliced with one another part
2018-12-17 18:04:23 +01:00
219e3514dd Print time in output G-code: fill in the time if the file export
dialog is open after the slicing finished.
2018-12-12 15:09:20 +01:00
3cbd0b7867 WIP: Time estimate in file names. 2018-12-12 12:00:45 +01:00
92e6427511 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
eb4a48c141 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
6694db0e0b Fixed a harless assert in PrintObject consturctor.
Fixed a bug in G-code generator regarding the seam hiding.
2018-12-07 11:21:05 +01:00
e99fa7d104 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
30f61bd66e WIP: Synchronization of SLA background processing. 2018-11-21 17:35:35 +01:00
63ee3dc63c Partial update of 3D scene (GLVolumes derived from Model and from
the SLAPrintObject).
Updated PrintBase to generate a unique timestamp at each step invalidation.
2018-11-16 18:28:50 +01:00
5dc9799e14 Fixed synchronization of background processing with the front end. 2018-11-12 16:28:27 +01:00
96eba71a21 Integrated SLAPrint into background processing.
Fixed couple of compiler warnings.
2018-11-08 20:18:40 +01:00
d79e2d8fa6 Separated Print / PrintObject into PrintBase.cpp/h to support SLAPrint 2018-11-08 14:23:17 +01:00
ab8a8111cb Some refactoring. 2018-11-02 20:41:49 +01:00
f701921c65 Bugfix: Slice at the correct height. 2018-10-31 20:02:07 +01:00
65c568e4f3 Print step invalidation: Improvement of readability. 2018-10-31 19:21:00 +01:00
a97ce278dc Finished (?) switching between the FDM / SLA profiles,
fixed an invalidation bug in Print::apply()
2018-10-31 18:05:25 +01:00
07feaa3c7d WIP: SL1 profiles, SL1 in wizard, switching between FFF / SLA 2018-10-31 16:22:36 +01:00
c0a286481b WIP: Fixed some issues with cancelation & restart of background processing. 2018-10-30 09:27:31 +01:00
bf3af6adea Merge branch 'dev_native' of https://github.com/prusa3d/Slic3r into dev_native 2018-10-24 11:48:44 +02:00
6f72884339 Background processing: Fixed rotation & scaling of PrintObjects. 2018-10-24 11:48:39 +02:00
83da64a30d CancellationCallback is now passed by value, instead of non-const reference (which would require initializing the reference from temporaries) 2018-10-24 11:05:19 +02:00
78468e49d4 WIP: Background processing is almost working now.
still PrintObject::_slice_volumes() needs some love to set
the PrintObject matrices correctly.
2018-10-23 22:53:43 +02:00
31b482c605 WIP: Reconstruction of background processing. 2018-10-23 15:27:31 +02:00
dae3c59a62 WIP: Synchronization of Model / ModelObject with Print / PrintObject 2018-10-18 14:36:46 +02:00
18199b33f0 WIP: Reconstruction of background processing update timer,
added unique IDs to the Model / ModelObject / ModelVolume objects,
added a copy of Model hierarchy at the Print,
WIP: new Print::apply() method to update the Print's copy of Model,
to update the Print's PrintObjects, to update status of the Print and
PrintObjects, and to possibly stop the background processing.
2018-10-17 11:12:38 +02:00
f5b56b5716 Plater: increase, decrease, set_number_of_copies, arrange 2018-10-11 12:48:35 +02:00
934f899ce9 WIP: Plater, build fixes 2018-10-08 17:41:37 +02:00
1260b8deb3 WIP: Moved sources int src/, separated most of the source code from Perl.
The XS was left only for the unit / integration tests, and it links
libslic3r only. No wxWidgets are allowed to be used from Perl starting
from now.
2018-09-19 11:02:24 +02:00