Commit Graph

513 Commits

Author SHA1 Message Date
Alessandro Ranellucci
04d2e4124f Fix numerical issue on Win32 2014-08-04 15:05:36 +02:00
Alessandro Ranellucci
d9f6b0933b Use istringstream for deserializing config options in order to use the correct locale. #2187 2014-08-04 11:34:53 +02:00
Alessandro Ranellucci
b10917806a Ported some Model methods to XS 2014-08-03 20:33:16 +02:00
Alessandro Ranellucci
f06566dd3a Fix error in PrintRegion::flow() port 2014-08-03 20:02:58 +02:00
Alessandro Ranellucci
6adc3477c9 Moved C++ code into new libslic3r directory 2014-08-03 19:42:29 +02:00
Alessandro Ranellucci
b8676241e0 Split Print.cpp and Layer.cpp into multiple compilation units 2014-08-03 19:28:40 +02:00
Alessandro Ranellucci
7ff13c063f Port PrintRegion::flow() and LayerRegion.flow() to XS 2014-08-03 19:17:23 +02:00
Alessandro Ranellucci
380dd8adfc Ported some methods to XS 2014-08-03 18:41:09 +02:00
Alessandro Ranellucci
30fa055995 Bugfix: medial axis missed some segments. #2144 2014-08-03 15:03:47 +02:00
Alessandro Ranellucci
f462af20f9 Visual preview for bed shape dialog 2014-08-03 00:20:55 +02:00
Alessandro Ranellucci
3ff613d166 Merge branch 'acp-voronoi'
Conflicts:
	xs/xsp/my.map
2014-07-26 22:38:35 +02:00
Alessandro Ranellucci
53f2d6bb4b New 3D Honeycomb infill pattern (credits: David Eccles (gringer)). #1646 2014-07-26 17:07:43 +02:00
Alessandro Ranellucci
c4d70bcb85 Always use a rectangle with semicircles as extrudate shape 2014-07-26 15:29:24 +02:00
Alessandro Ranellucci
7aaf27c0c7 Put skirt outside brim to avoid conflicts. #2157 2014-07-24 23:43:19 +02:00
Alessandro Ranellucci
86bad17abb Display skirt and brim in toolpaths preview. Also take support material margin into account when sizing the window. #2169 2014-07-24 18:32:07 +02:00
Alessandro Ranellucci
70fb381ecf Bugfix: some extra spots were added in medial axis 2014-07-23 16:32:31 +02:00
Alessandro Ranellucci
a02ea2842c Change default layer height to 0.3mm 2014-07-23 14:15:14 +02:00
Alessandro Ranellucci
d9f5fdae72 Bugfix: make_perimeters() was not truly idempotent because prepare_infill() split ->slices into typed surfaces 2014-07-15 19:07:38 +02:00
Alessandro Ranellucci
da4d6cbabb 3D preview of plater 2014-07-13 12:10:34 +02:00
Alessandro Ranellucci
aacc01a56f Store object and volume names in the new 'name' property instead of relying on material id 2014-07-12 11:20:57 +02:00
Alessandro Ranellucci
f82a8475a1 Use AMF object and volume metadata for handling per-object and per-volume settings 2014-07-11 20:09:01 +02:00
Alessandro Ranellucci
d9dc2fda00 Fixed regression causing variable layer heights to be ignored. #2136
Conflicts:

	xs/xsp/my.map
2014-07-01 19:49:15 +02:00
Alessandro Ranellucci
a06fad9e13 Enable/disable GUI controls according to the others in order to guide the user through option dependency 2014-07-01 18:18:23 +02:00
Alessandro Ranellucci
04b67f0cb0 Refactored OptionsGroup class for cleaner OOP model and cleaner event model 2014-07-01 16:42:12 +02:00
Alessandro Ranellucci
67bf99633e Fix compilation under 5.20 (untested). #2109 2014-06-25 14:57:06 +02:00
Alessandro Ranellucci
b9e8fbacb7 Put the Default Extruder option in a less confusing position 2014-06-19 20:07:16 +02:00
Alessandro Ranellucci
4bf23c67bb Bugfix: wrong input validation in set_layer_height_ranges(). #2105 2014-06-19 14:44:50 +02:00
Alessandro Ranellucci
b263da8d4c Assign category to dont_support_bridges 2014-06-19 00:14:22 +02:00
Alessandro Ranellucci
928335f186 Removed print_center option (but left --print-center from CLI) 2014-06-16 23:58:45 +02:00
Alessandro Ranellucci
7cc0bce97d Merge branch 'bedshape' 2014-06-16 22:57:04 +02:00
Alessandro Ranellucci
998a4225de Finished implementation of bed_shape in plater 2014-06-16 15:18:39 +02:00
Alessandro Ranellucci
7a20c4d52a More incomplete work for using bed_shape in plater 2014-06-16 14:05:22 +02:00
Alessandro Ranellucci
4fe2128fc4 Initial work for custom bed shape 2014-06-16 01:49:49 +02:00
Alessandro Ranellucci
6fbb6613ee Remove erroneous min limit from xy_size_compensation definition. #2096 2014-06-15 11:50:52 +02:00
Alessandro Ranellucci
04ed3abd3f Fix compilation on 5.18(?) 2014-06-14 23:12:03 +02:00
Alessandro Ranellucci
e9910a2c0b XYZ mirroring from plater 2014-06-14 21:14:33 +02:00
Alessandro Ranellucci
1a5a7dcd36 Added min limits for most numeric options 2014-06-14 15:20:38 +02:00
Y. Sapir
a837e26f51 Translate PlaceholderParser::apply_config to C++. 2014-06-14 00:01:52 +02:00
Alessandro Ranellucci
6eec3440cc Don't invalidate things if the changed options only affect G-code export 2014-06-13 23:07:46 +02:00
Alessandro Ranellucci
a1bcbea816 Use async timer everywhere 2014-06-13 20:36:45 +02:00
Alessandro Ranellucci
4d76d05bbb Refactoring: better API for Print/Object steps with explicit dependencies 2014-06-13 20:05:18 +02:00
Alessandro Ranellucci
d9e7a50a6e Partial work for background processing 2014-06-13 11:19:53 +02:00
Alessandro Ranellucci
97231327e0 Have Print::apply_config() return true if any step was invalidated 2014-06-12 09:29:26 +02:00
Alessandro Ranellucci
6194cbf530 Refactoring: new method in Flow for calculating spacing between extrusions having different width 2014-06-12 09:17:37 +02:00
Alessandro Ranellucci
8ee11b3239 Refactoring: keep height in Flow object and calculate spacing on demand 2014-06-12 01:00:13 +02:00
Alessandro Ranellucci
34750d47fe Move external_perimeters_first to PrintRegionConfig 2014-06-11 22:15:28 +02:00
Alessandro Ranellucci
e158d1e612 Move bridge_flow_ratio to PrintRegionConfig 2014-06-11 22:10:33 +02:00
Alessandro Ranellucci
7eaba2d132 Move PrintConfigDef::build_def() to .cpp 2014-06-11 22:04:19 +02:00
Alessandro Ranellucci
5dcc1eab79 Bugfix: seam_position = aligned failed in certaim circumstances because of faulty concave points detection. Includes regression test 2014-06-11 21:58:41 +02:00
Alessandro Ranellucci
7ccfd2f024 More work on incremental slicing 2014-06-11 17:51:18 +02:00
Alessandro Ranellucci
d2ca4c1b13 Some initial work for incremental slicing 2014-06-11 00:15:02 +02:00
Alessandro Ranellucci
5c54acf9ac Use ->ptr() for CoolingBuffer too 2014-06-10 16:17:34 +02:00
Alessandro Ranellucci
c5c069b9a0 Update MANIFEST 2014-06-10 16:03:43 +02:00
Alessandro Ranellucci
3f6360ee8f Finish porting Print classes to XS 2014-06-10 16:01:57 +02:00
Alessandro Ranellucci
ba8148f4ad Merge branch 'printcpp' of github.com:sapir/Slic3r into sapir-printcpp
Conflicts:
	lib/Slic3r/GCode.pm
	lib/Slic3r/Print.pm
	lib/Slic3r/Print/Object.pm
	lib/Slic3r/Print/Region.pm
2014-06-10 14:46:40 +02:00
Alessandro Ranellucci
e3e69251cb New XY Size Compensation option. #581 #56 2014-06-10 13:28:57 +02:00
Alessandro Ranellucci
3599bd0bae Distinct extrusion width for external perimeters 2014-06-09 21:22:15 +02:00
Alessandro Ranellucci
28695c719c Fixed regression causing bridge flow to be incorrect when a manual default extrusion width was specified. Includes several regression tests. #2027 2014-06-03 23:59:03 +02:00
Alessandro Ranellucci
f5b9df2413 New implementation of Avoid crossing perimeters using Voronoi diagrams 2014-05-28 10:16:58 +02:00
Alessandro Ranellucci
f018828bfd Simplify islands before initializing MotionPlanner 2014-05-27 01:11:40 +02:00
Alessandro Ranellucci
07b915fb4f Fix MANIFEST 2014-05-27 00:05:45 +02:00
Alessandro Ranellucci
7215e66a6a Merge branch 'master' into visilibity
Conflicts:
	lib/Slic3r/GCode.pm
	xs/MANIFEST
2014-05-27 00:04:53 +02:00
Alessandro Ranellucci
65dd95aaac Update MANIFEST and test 2014-05-27 00:03:23 +02:00
Alessandro Ranellucci
98b8936ee2 Automatically disable retract_layer_change when using spiral_vase 2014-05-26 23:51:58 +02:00
Alessandro Ranellucci
2ac40f9547 Revert "Update Clipper to r468. #2028"
This reverts commit 6a6439576b.
2014-05-26 20:00:59 +02:00
Alessandro Ranellucci
6a6439576b Update Clipper to r468. #2028 2014-05-26 17:21:31 +02:00
Alessandro Ranellucci
b02e459c4b Attempt to fix compilation issue 2014-05-26 17:13:24 +02:00
Alessandro Ranellucci
3d25b9030c Bugfix: movement between objects in sequential printing mode was going too far away. #2013 #2007 2014-05-26 15:19:13 +02:00
Alessandro Ranellucci
0decbbf910 Revert "Updated Clipper to r467 but it doesn't seem to fix #2028 yet"
This reverts commit a62457d6b5.
2014-05-25 23:27:26 +02:00
Alessandro Ranellucci
a62457d6b5 Updated Clipper to r467 but it doesn't seem to fix #2028 yet 2014-05-25 22:48:58 +02:00
Y. Sapir
19d18bdd84 Attempt to solve conflict with a3bd1b5 by adding id to PrintObject and using that as a hash key. 2014-05-25 03:00:29 +03:00
Y. Sapir
9247f21ff8 Add missing include "BoundingBox.hpp" to Polygon.xsp. 2014-05-25 00:55:13 +03:00
Y. Sapir
d2e51242d9 Really fix total_used_filament / total_extruded_volume. 2014-05-25 00:53:47 +03:00
Y. Sapir
07dd799967 Fix inherited Layer::Support id and object accessors. 2014-05-25 00:50:49 +03:00
Y. Sapir
b8b8c746d9 Make clear_regions and delete_region methods private (both Print & Layer), and remove from XSP. 2014-05-25 00:11:17 +03:00
Y. Sapir
22b05cb187 Make read-only constructor parameters - private. 2014-05-24 23:50:45 +03:00
Y. Sapir
76738dc66b Remove some more Clone typemaps and add some whitespace. 2014-05-24 23:50:45 +03:00
Y. Sapir
0486a7f857 Try to fix _copies_shift scaling. 2014-05-24 23:50:45 +03:00
Y. Sapir
db51e4693d Return NULL values from XS as undef. 2014-05-24 23:50:45 +03:00
Y. Sapir
d06c300926 Add ::Ref classes for every missing C++ class (going by REGISTER_CLASS calls). 2014-05-24 23:50:44 +03:00
Y. Sapir
8da0bded1d Move Print object storage to C++. (along with its subobjects) 2014-05-24 23:50:29 +03:00
Alessandro Ranellucci
88a2e5c791 Typo seal -> seam :-) 2014-05-24 22:10:28 +02:00
Alessandro Ranellucci
3df2488eca Disable test until Clipper bug 96 is fixed #2028 2014-05-24 00:10:37 +02:00
Alessandro Ranellucci
ed58f35fe5 Revert "Fix bad test". Test was actually correct. Clipper's still slightly buggy since it splits polylines
This reverts commit bf2af85da5.
2014-05-24 00:09:04 +02:00
Alessandro Ranellucci
bf2af85da5 Fix bad test 2014-05-24 00:01:27 +02:00
Alessandro Ranellucci
fcdb462abe Failing test cases for Clipper bug returning empty result set. #2028 2014-05-24 00:00:15 +02:00
Alessandro Ranellucci
70ceb853f1 Update Clipper to last trunk to fix a couple Clipper bugs causing empty intersection results and failure to process polylines with coinciding endpoints. This also caused crashed in some rare circumstances 2014-05-23 23:58:43 +02:00
Alessandro Ranellucci
a3bd1b5302 New seal_position option that replaces randomize_start, start_perimeters_at_concave_points and start_perimeters_at_non_overhang. The two latter options are now always on by default. A new "Aligned" seal position value has been added, that forces starting points to be aligned when not randomized. #1741 #925 2014-05-22 19:34:49 +02:00
Alessandro Ranellucci
c63bd8165d Fixed minor compilation issue 2014-05-22 13:47:30 +02:00
Alessandro Ranellucci
f2c5e799b1 Enforce seam alignment and blend in spiral vase. #2023 2014-05-22 12:28:12 +02:00
Alessandro Ranellucci
254ab29a97 New Point::projection_onto() methods 2014-05-21 20:08:21 +02:00
Alessandro Ranellucci
874c7a6e8b One line missing for support_material_interface_speed declaration 2014-05-21 15:53:41 +02:00
Alessandro Ranellucci
5e6ff952df Fix more regressions in test suite regarding the workaround for Clipper bug 2014-05-21 15:45:16 +02:00
Alessandro Ranellucci
8ca352eb62 Separate speed option for support material interface. #2009 2014-05-21 15:21:20 +02:00
Alessandro Ranellucci
08279ec5d8 Bugfix: thin walls forming a closed loop had overlapping segments at their endpoints. #1948 #1875 2014-05-21 15:03:31 +02:00
Alessandro Ranellucci
a8b6e32767 Gracefully handle loading config files having empty strings for multi-value options (like wipe). #2003 2014-05-21 11:38:42 +02:00
Alessandro Ranellucci
ac0a91a162 Move many speed settings to PrintRegionConfig 2014-05-15 18:53:05 +02:00
Alessandro Ranellucci
ad99b2a0fd Fixed one more regression introduced with Model refactoring. Includes regression test 2014-05-15 16:37:18 +02:00
Alessandro Ranellucci
5fe5021fd7 Implemented avoid_crossing_perimeters with VisiLibity 2014-05-13 20:06:01 +02:00
Alessandro Ranellucci
ee2c1c6127 Refactored the Slic3r::GCode logic for speeds 2014-05-13 08:34:21 +02:00