454 Commits

Author SHA1 Message Date
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
bubnikv
e7d2fcf0be Fixed unit tests broken with the previous commit (Spiral Vase fix).
Fixed a crash in the previous commit.
2020-02-09 09:43:15 +01:00
bubnikv
fa3d138e91 Fix of the previous commit: Fixed number of unit tests to be executed. 2020-01-21 13:13:52 +01:00
bubnikv
05ea01bdcc Ported PlaceholderParser unit tests to C++. 2020-01-21 12:10:09 +01:00
supermerill
dda438c74b Merge commit '5e3e5492487690fb48cd7c4bb0b7e0e019e30a5c' (wip) 2019-12-05 20:53:02 +01:00
Matthias Urlichs
329ad97a84 Add int() and % (modulo) 2019-12-04 09:32:22 +01:00
bubnikv
f8dc74374c Ported various clipper unit tests from Perl to C++,
the clipper Perl unit tests were removed.
2019-10-25 17:07:55 +02:00
supermerill
773972cc2c Merge remote-tracking branch 'remotes/prusa/master'
WIP, in particular, have to review the custom beds svg/stl
2019-07-31 18:22:49 +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
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
supermerill
47f5b30c5a Merge remote-tracking branch 'remotes/prusa/master' 2019-06-20 17:57:41 +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
Lukas Matena
07282eb24d 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
supermerill
8840d01fb0 Merge remote-tracking branch 'remotes/prusa/master' 2019-05-16 19:55:45 +02:00
bubnikv
5c567af36e Fix of the previous commit 2019-05-14 15:48:00 +02:00
bubnikv
74fee6ef78 Fix of unit tests after change of default nozzle and filament diameter. 2019-05-14 15:35:54 +02:00
bubnikv
b4a61a3acb Fixed unit test after splitting the external fill pattern to top/bottom. 2019-02-25 09:11:20 +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
supermerill
9b330f4631 thin_wall: improvements & bugfixes 2018-12-06 17:23:13 +01:00
bubnikv
bb7f504296 Removed "Slice to SVG" and "Quick Slice" 2018-09-14 11:16:54 +02:00
bubnikv
0235f1a821 Merged with dev 2018-09-12 11:59:02 +02:00
supermerill
107de68b03 thin_walls : medial axis improvements
It's now an intensive post-processing of the raw voronoi diagram.
It picks each crossing and try to merge branch where it makes sense, updating the width.
+ new tests (it fail the all medial axis segments of a semicircumference have the same orientation, but it's intended)
+ filter for too small thin walls
+ edge case for too many thin/thick chunks

note: the algo do not know "the good direction". If the thing is more wide that long, it will extrude side-way.
2018-09-05 17:10:43 +02:00
supermerill
c1f3380339 Merge commit 'e0e6a238107b3614fde83d79a6e6056d0a378e2a' into master_slic3rPE_PR 2018-07-26 12:23:48 +02:00
Enrico Turri
5c90746914 Merge with master + resolved conflicts 2018-07-17 10:44:23 +02:00
Enrico Turri
cf1ccacd41 Perimeters test modified to skip lines M73 2018-07-13 10:46:30 +02:00
Lukas Matena
54bd0af905 Infill wiping turned off by default and in some automatic tests 2018-06-27 15:07:37 +02:00
supermerill
f26b0482f3 Merge remote-tracking branch 'remotes/prusa/master' into supermerill-dev 2018-06-26 17:52:38 +02:00
bubnikv
7645e9cb7a Added layer_num, layer_z variables to the end_gcode, end_filament_gcode,
added min(.,.), max(.,.) functions to the placeholder parser syntax.
2018-05-15 14:04:29 +02:00
bubnikv
cbaf0ccc51 Refactored cooling logic for readibility and maintainability. 2018-04-25 22:54:52 +02:00
bubnikv
269770bbbc Fix of a new cooling logic. 2018-04-25 22:06:44 +02:00
Merill
700a9ad669 Merge remote-tracking branch 'remotes/prusa/master' into supermerill-dev
# Resolved:
#	xs/src/slic3r/GUI/Preset.cpp
#	xs/src/slic3r/GUI/Tab.cpp
2018-04-18 20:12:31 +02:00
Merill
2749c63b10 overextruding a bit on top of bridge to come back to a correct height 2018-04-02 13:39:57 +02:00
remi
f22db7efbe Add "one perimeter for top surface" 2018-04-01 22:25:25 +02:00
supermerill
f9344a00e3 Split external infill parameter to top/bottom external infill 2018-04-01 17:05:36 +02:00
Lukas Matena
7951349a1f Another t-test change to avoid fails 2018-03-28 10:32:23 +02:00
Lukas Matena
0d2637fede t tests changed so they don't fail on the extruder number check 2018-03-28 10:16:04 +02:00
bubnikv
e931f75010 Work in progress: Good bye, Perl Threads! 2018-03-23 11:41:20 +01:00
bubnikv
e162c47167 Removed some dependencies on Perl IO module. 2018-03-16 12:07:54 +01:00
bubnikv
b4483fdcbd Fix of "Conditional gcode with "<=" condition fails"
https://github.com/prusa3d/Slic3r/issues/683
2018-02-02 11:49:09 +01:00
bubnikv
9d3ade81fa Fixed placeholder parser tests. 2017-12-21 17:27:24 +01:00
bubnikv
a402b1b83d Implemented <,>,<=,>=,or,and,||,&& operators. 2017-12-19 16:48:14 +01:00
bubnikv
bb61de8379 Fixed a regression error: The "current_extruder" identifier was not set
at the placeholder parser.
Implemented a new PlaceholderParser::evaluate_boolean_expression()
functionality to evaluate just a boolean expression using the full
expressive power of the macro processing syntax. This function
will now be used for deciding, which print or filament preset
is compatible with which printer preset.
2017-12-18 12:14:09 +01:00
bubnikv
ae118519ab Fixed a 32bit build bug in the new PlaceholderParser macro processor. 2017-11-29 19:27:26 +01:00
bubnikv
6729dc1c6d Fixed a failing PlaceholderParser test case. 2017-11-29 16:35:48 +01:00
bubnikv
0ddbfccb08 Added some test cases for the conditional G-code math calculator.
https://github.com/prusa3d/Slic3r/issues/438
2017-11-28 19:56:32 +01:00
bubnikv
672194b475 Ported the between_objects_gcode custom G-code blocks,
thanks @lordofhyphens, https://github.com/alexrj/Slic3r/pull/3275

Improved handling of custom G-code blocks: Slic3r will try to extract
the target extruder and bed temperatures from the custom G-code blocks.
2017-11-28 15:19:57 +01:00
bubnikv
b54a15faa2 Fix of the new PlaceholderParser: Maintain whitespaces and new lines. 2017-11-26 20:43:31 +01:00
bubnikv
708f416c84 PlaceholderParser extended with {if}/{elsif}{else} blocks and
+ - * / == != <> numeric expressions.
2017-11-26 09:59:14 +01:00
bubnikv
47f193fe2d The PlaceholderParser has been rewritten to use
a real boost::spirit::qi parser, accessing the DynamicConfig repository
directly. This is a first step towards a full fledged expression
interpreter.
2017-11-17 11:15:46 +01:00
bubnikv
e8b6d92d4d Looks like the reworked C++ preferences start to work again. 2017-11-02 16:21:34 +01:00