supermerill
f087cf1239
Merge remote-tracking branch 'remotes/prusa/master'
...
seems to work
need to update profiles & ui
2020-03-26 12:10:30 +01:00
Lukas Matena
b1145df566
Fixed incorrect filtering of extrusions during gcode generation
...
The behaviour resulted in duplicate extrusions in some cases
Fix of #3665
2020-02-18 09:52:34 +01:00
bubnikv
9038dc21e8
Fixing regression issue after G-code export refactoring.
2020-01-10 15:51:35 +01:00
bubnikv
de70adca9c
Optimization of G-code export: Don't make copies of ExtrusionEntities
...
when sorting them into Extruders / Islands / Regions.
2020-01-09 10:00:48 +01:00
supermerill
dda438c74b
Merge commit '5e3e5492487690fb48cd7c4bb0b7e0e019e30a5c' (wip)
2019-12-05 20:53:02 +01:00
bubnikv
98a71a557b
Ported test_support_material.cpp from upstream slic3r.
...
Ported extension of ExtrusionEntityCollection::flatten() to disable
flattening of no_sort() collections.
2019-10-17 19:09:24 +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
supermerill
2f042e030c
Merge remote-tracking branch 'remotes/prusa/master'
...
not merged: fill.cpp, perimeter_generator, because they ahve been reworked and need to be understand fully before adding my extensive modifications.
To verify: glcanvas: maybe filament color selection is deleted (or the other one i added?)
2019-09-26 13:14:01 +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
bubnikv
83b6b82188
Refactored ExtrusionEntityCollection::flatten()
2019-09-16 16:35:08 +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
supermerill
b2db3ad5a9
fix eec sorting: #77
2019-07-08 14:51:00 +02:00
supermerill
3aea01e815
cherry-picked slic3r/Slic3r#4809
...
changed the ExtrusionEntity visitor a bit and add new ones.
2019-06-27 19:19:01 +02:00
supermerill
edad0da724
Extrusion entity visitor & 3D extrusion path
...
* Add a visitor class for extrusion entity
* replace most of extrusionEntity* cast by a visitor
* create a ExtrusionPath3D, subclass of ExtrusionPath
* create a ExtrusionMultiPath3D, with a generic ExtrusionMultiEntity for the two one (note: need some more work to make it more generic)
* modify gcode to allow the export of 3D path (minimum modification/effort: no validity check).
2019-02-20 17:20:03 +01:00
supermerill
a11db7a227
Merge tag 'mass_rename' into master_slic3rPE_PR
...
# "resolved" Conflicts:
# lib/Slic3r/GUI/Plater.pm
# lib/Slic3r/GUI/Plater/2DToolpaths.pm
# lib/Slic3r/GUI/Plater/ObjectCutDialog.pm
# lib/Slic3r/GUI/Plater/ObjectPartsPanel.pm
# lib/Slic3r/GUI/Plater/ObjectSettingsDialog.pm
# lib/Slic3r/GUI/Plater/OverrideSettingsPanel.pm
# src/libslic3r/EdgeGrid.cpp
# src/libslic3r/EdgeGrid.hpp
# src/libslic3r/ExPolygon.cpp
# src/libslic3r/ExtrusionEntity.hpp
# src/libslic3r/ExtrusionEntityCollection.hpp
# src/libslic3r/Fill/Fill.cpp
# src/libslic3r/Fill/FillBase.cpp
# src/libslic3r/Flow.cpp
# src/libslic3r/GCode.cpp
# src/libslic3r/GCode/ToolOrdering.cpp
# src/libslic3r/GCode/WipeTowerPrusaMM.cpp
# src/libslic3r/Geometry.cpp
# src/libslic3r/LayerRegion.cpp
# src/libslic3r/Model.cpp
# src/libslic3r/MultiPoint.cpp
# src/libslic3r/MultiPoint.hpp
# src/libslic3r/PerimeterGenerator.cpp
# src/libslic3r/PerimeterGenerator.hpp
# src/libslic3r/Polyline.cpp
# src/libslic3r/Polyline.hpp
# src/libslic3r/Print.cpp
# src/libslic3r/PrintConfig.cpp
# src/libslic3r/PrintConfig.hpp
# src/libslic3r/PrintObject.cpp
# src/libslic3r/SupportMaterial.cpp
# src/libslic3r/TriangleMesh.cpp
# src/libslic3r/TriangleMesh.hpp
# src/libslic3r/Utils.hpp
# src/libslic3r/utils.cpp
# src/slic3r/AppController.hpp
# src/slic3r/AppControllerWx.cpp
# src/slic3r/GUI/3DScene.cpp
# src/slic3r/GUI/GUI.cpp
# src/slic3r/GUI/GUI.hpp
# src/slic3r/GUI/Preset.cpp
# src/slic3r/GUI/ProgressIndicator.hpp
# src/slic3r/GUI/Tab.hpp
# xs/CMakeLists.txt
# xs/src/libslic3r/Layer.hpp
# xs/src/libslic3r/Line.cpp
# xs/src/libslic3r/Line.hpp
# xs/src/libslic3r/Point.hpp
# xs/src/libslic3r/Print.hpp
# xs/src/libslic3r/PrintRegion.cpp
# xs/src/slic3r/AppController.cpp
# xs/xsp/AppController.xsp
# xs/xsp/GUI.xsp
# xs/xsp/Print.xsp
2018-12-17 15:42:50 +01:00
bubnikv
0558b53493
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