Alessandro Ranellucci
0e8a0ef1ca
Refactoring. Use Model class for representing the plate in GUI
2013-12-12 20:19:33 +01:00
Alessandro Ranellucci
f55e057504
More work for refactoring add_model() to add_model_object(). Tests pass
2013-12-09 01:12:37 +01:00
Alessandro Ranellucci
7871673bf6
Initial work for new model handling
2013-11-27 12:18:24 +01:00
Alessandro Ranellucci
bd8c430afd
Merge branch 'stable'
...
Conflicts:
lib/Slic3r/Geometry/Clipper.pm
lib/Slic3r/Layer/Region.pm
2013-11-24 22:48:31 +01:00
Alessandro Ranellucci
387df3b900
Fix regression causing toolchange_gcode to crash Slic3r. Includes regression test. #1545
2013-11-24 13:04:16 +01:00
Alessandro Ranellucci
a93c862338
Ported traverse_pt() to XS
2013-11-23 23:21:59 +01:00
Alessandro Ranellucci
0516aac715
Ported chained_path() to XS
2013-11-23 21:39:05 +01:00
Alessandro Ranellucci
e75dbf37fa
Never scale TriangleMesh objects
2013-11-23 19:25:33 +01:00
Alessandro Ranellucci
de9d5403e8
Finished porting convex_hull() to XS and removed dependency on Math::ConvexHull::MonotoneChain
2013-11-22 22:48:07 +01:00
Alessandro Ranellucci
4577f0725c
Incomplete work for XS-based convex_hull
2013-11-22 21:43:35 +01:00
Alessandro Ranellucci
518798beb3
Incomplete work for porting simplify() to XS
2013-11-21 20:25:24 +01:00
Alessandro Ranellucci
5f81292f3f
Ported encloses_point() to XS and renamed to contains_point()
2013-11-21 16:21:42 +01:00
Alessandro Ranellucci
50c0081d25
Update Clipper to 6.0.0
2013-11-20 11:35:58 +01:00
Alessandro Ranellucci
583fc767d8
Fix regression in Avoid Crossing Perimeters. #1531
2013-11-18 17:20:48 +01:00
Alessandro Ranellucci
beb7939e22
Rename standby_temperature to ooze_prevention. #1523
2013-11-15 16:01:15 +01:00
Alessandro Ranellucci
5e78f8a0b0
Make sure all extruders are outside skirt at toolchange when standby_temperature is enabled
2013-11-15 15:52:11 +01:00
Alessandro Ranellucci
9f41f0279e
Some work to reduce recursive dependencies between classes
2013-11-11 20:37:06 +01:00
Alessandro Ranellucci
bad8afdcda
Fix regression causing incomplete output filepath expansion. #1514
2013-11-11 00:08:50 +01:00
Alessandro Ranellucci
4755e61d71
Bugfix: [input_filename] and [input_filename_base] were only available in the filename pattern and not in the custom G-code settings. #1507
2013-11-02 15:49:20 +01:00
Alessandro Ranellucci
0b63afb370
Fix complete_objects after XS port. Includes regression test. #1511
2013-11-02 14:44:30 +01:00
Alessandro Ranellucci
f603db5e84
Fix --export-svg
2013-10-13 11:45:22 +02:00
Alessandro Ranellucci
032698fb07
Test that toolchanges happen outside skirt when standby-temperature is enabled
2013-09-19 10:44:29 +02:00
Alessandro Ranellucci
40fd7418cd
Added test for standby_temperature
2013-09-19 01:29:34 +02:00
Alessandro Ranellucci
0062c3b7fc
Almost finished the implementation of --standby-temperature
2013-09-18 20:03:59 +02:00
Alessandro Ranellucci
e0da81e8bf
Introduce a ->count method for all collections to save time
2013-09-17 23:38:23 +02:00
Alessandro Ranellucci
9a51964e98
Clean medial axis code and gap fill
2013-09-17 10:37:01 +02:00
Alessandro Ranellucci
aef5c05c57
Update brim generation code. Includes regression test. #1440
2013-09-16 10:33:30 +02:00
Alessandro Ranellucci
a821eb7f3c
More work to avoid working with vertices outside XS
2013-09-11 11:55:08 +02:00
Alessandro Ranellucci
566d38a472
Replace TriangleMesh with the XS port
2013-09-10 00:40:46 +02:00
Alessandro Ranellucci
2d3dae621a
Minor typos preventing correct positioning after recent XS merge
2013-09-05 14:23:31 +02:00
Alessandro Ranellucci
67aefdccc7
Fixed --avoid-crossing-perimeters and --support-material after the xsdata merge
2013-09-04 00:10:53 +02:00
Alessandro Ranellucci
c9f68ed28a
Refactor E code and keep track of per-extruder consumend filament
2013-08-28 20:40:13 +02:00
Alessandro Ranellucci
fb763b0187
Removed dependency on Math::Clipper
2013-08-27 01:26:44 +02:00
Alessandro Ranellucci
b11b595c97
Ported nearest_point() and nearest_point_index()
2013-08-27 00:52:20 +02:00
Alessandro Ranellucci
fe42427a54
Ported Polygon->is_valid() and ExPolygon->is_valid()
2013-08-26 23:27:51 +02:00
Alessandro Ranellucci
da0b85c0d9
Ported ExPolygon->contour and ExPolygon->holes
2013-08-26 23:09:18 +02:00
Alessandro Ranellucci
9cf831b9c5
Ported union_pt() to XS
2013-08-26 18:37:19 +02:00
Alessandro Ranellucci
49040db9a3
Fixes to pass all tests
2013-08-26 16:25:42 +02:00
Alessandro Ranellucci
fc9cec9d81
Merge branch 'master' into xsdata
...
Conflicts:
lib/Slic3r/Layer/Region.pm
lib/Slic3r/Print/Object.pm
2013-08-25 19:59:42 +02:00
Alessandro Ranellucci
026e0c06e4
Ability to customize how materials are mapped to extruders. #1020
2013-08-25 19:52:32 +02:00
Alessandro Ranellucci
3d6fb1b05c
New feature: ability to override specific settings for individual objects in the plater. #344
2013-08-25 14:37:50 +02:00
Alessandro Ranellucci
fa07c512b4
Merge branch 'master' into xsdata
...
Conflicts:
lib/Slic3r/Layer/Region.pm
lib/Slic3r/Print.pm
lib/Slic3r/Print/Object.pm
2013-08-16 09:09:56 +02:00
Alessandro Ranellucci
4862d832b5
Simplify layer change code now that we have distinct support layers
2013-08-09 19:46:20 +02:00
Alessandro Ranellucci
5d80c26b29
Adjust collision detection for brim and include support islands inside the only_retract_when_crossing_perimeters logic
2013-08-09 15:04:14 +02:00
Alessandro Ranellucci
cde662cb51
Fix collision detection for brim
2013-08-09 14:22:41 +02:00
Alessandro Ranellucci
b38cc2c244
Merge branch 'master' into xsdata
...
Conflicts:
lib/Slic3r.pm
lib/Slic3r/ExPolygon.pm
lib/Slic3r/Fill.pm
lib/Slic3r/Fill/Rectilinear.pm
lib/Slic3r/GCode.pm
lib/Slic3r/GUI/Plater.pm
lib/Slic3r/Geometry/Clipper.pm
lib/Slic3r/Layer/Region.pm
lib/Slic3r/Print.pm
lib/Slic3r/Print/Object.pm
lib/Slic3r/TriangleMesh.pm
t/shells.t
xs/MANIFEST
2013-08-08 02:10:34 +02:00
Alessandro Ranellucci
6ddeb2fa07
Initialize support material interface extruder explicitely. #1364
2013-07-31 19:52:25 +02:00
Alessandro Ranellucci
415a2d165a
Cleaner code for first layer temperatures
2013-07-31 18:55:23 +02:00
Alessandro Ranellucci
60e5e2166a
Include support contact layers in skirt/brim generation
2013-07-31 16:29:44 +02:00
Alessandro Ranellucci
913f401280
Merge new-support2
2013-07-29 20:50:26 +02:00
Alessandro Ranellucci
a2cc230bb5
Add note about a bug caused by the disabled optimization about splitting meshes before avoid_crossing_perimeters. #1315
2013-07-29 19:50:47 +02:00
Alessandro Ranellucci
10a8f479f9
Bugfix: lift was not working correctly with multiple extruders and multiple skirt layers. Also, we now ignore all lift settings except the one of the first extruder. Includes regression tests. #1332 #1338
2013-07-29 19:43:57 +02:00
Alessandro Ranellucci
1b285f3f46
Thread-safe integration of ExtrusionPath::Collection
2013-07-18 22:29:12 +02:00
Alessandro Ranellucci
c7b6818ccf
Ported offset() and offset2()
2013-07-17 00:48:29 +02:00
Alessandro Ranellucci
898007fc36
Port offset_ex() and offset2_ex() to XS
2013-07-16 20:09:53 +02:00
Alessandro Ranellucci
9458c7db97
Fix integration of XS containers
2013-07-16 17:13:01 +02:00
Alessandro Ranellucci
9b582a11ff
Adopt XS containers everywhere (incomplete work)
2013-07-16 09:49:34 +02:00
Alessandro Ranellucci
ab6b3d41a7
XS interface completed, including new Line class
2013-07-15 22:57:22 +02:00
Alessandro Ranellucci
9af2a1c007
Use XS Point everywhere
2013-07-15 20:31:43 +02:00
Alessandro Ranellucci
159a009f96
Fix tests here and there
2013-07-15 15:26:56 +02:00
Alessandro Ranellucci
13e3a9129c
Use Slic3r::ExPolygon::Collection for Layer->slices
2013-07-14 15:06:49 +02:00
Alessandro Ranellucci
7534c1e6d9
Use Slic3r::Surface::Collection for Layer::Region->slices
2013-07-14 15:03:45 +02:00
Alessandro Ranellucci
5885be881c
New Slic3r::Surface::Collection class
2013-07-14 14:56:43 +02:00
Alessandro Ranellucci
d074b98aba
Optimization: don't store wipe path if wipe is not requested
2013-07-05 15:03:08 +02:00
Alessandro Ranellucci
8061cc6e30
Optimization in Polyline instantiation
2013-07-05 14:44:41 +02:00
Alessandro Ranellucci
fcd4de00e5
One more fix for --complete-objects working on single-object plates
2013-06-19 18:01:24 +02:00
Alessandro Ranellucci
5843f5df6c
Fix regression in --complete-objects causing fatal error and/or wrong warnings about object heights
2013-06-19 17:34:37 +02:00
Alessandro Ranellucci
799aeedd97
Fixed wrong refactoring in ac4a0bcdd8
2013-06-17 13:32:53 +02:00
Alessandro Ranellucci
3bcf1da702
Disable avoid_crossing_perimeters optimization until we can detect nested shells. #1254
2013-06-16 16:04:19 +02:00
Alessandro Ranellucci
ac4a0bcdd8
Refactoring: use Slic3r::Geometry::BoundingBox objects everywhere
2013-06-16 12:21:25 +02:00
Alessandro Ranellucci
a8981b8b35
Bugfix: infill was clipped badly. Includes regression test. #1245
2013-06-15 12:10:57 +02:00
Alessandro Ranellucci
962a51cc80
Some cleanup for the plater code
2013-06-13 14:33:10 +02:00
Alessandro Ranellucci
aee7b70d79
Bugfix: the order of transformations was not consistent in plater and actual G-code generation. #1171 #1191
2013-06-12 16:53:19 +02:00
Alessandro Ranellucci
b12a09ed71
Rename makerbot G-code flavor to makerware; also mention Repetier among RepRap firmwares. #1034
2013-06-07 23:24:53 +02:00
Alessandro Ranellucci
f991e3bc10
Fixed SVG export and added regression test
2013-06-07 12:00:03 +02:00
Alessandro Ranellucci
230367b383
Order objects using a nearest neighbor search instead of relying on the order in plater. #1184
2013-06-03 21:54:55 +02:00
Alessandro Ranellucci
3ffe98f0c3
Use actual Z to order objects in sequential printing rather than layer count, as layer heights might be different
2013-06-03 21:40:13 +02:00
Alessandro Ranellucci
c95245f143
Some G-code flavor logic simplification
2013-06-03 18:01:14 +02:00
Alessandro Ranellucci
167ec7a4e7
Use M135 for makerbot toolchange; also disable any G90 and G21 command. #1034
2013-06-03 16:21:22 +02:00
Alessandro Ranellucci
7134df4638
Only skip objects with no layers without stopping the whole job
2013-06-03 11:39:23 +02:00
Alessandro Ranellucci
895e0bbfcd
Include M82/M83 for Teacup too. #1206
2013-06-02 19:58:29 +02:00
Alessandro Ranellucci
086ec4af9c
Fixed yet one more regression in Quick Slice caused by recent Model refactoring. #1208
2013-06-02 19:32:53 +02:00
Alessandro Ranellucci
655d528d92
Fixed recent regression causing a spike when avoid_crossing_perimeters was used on split objects
2013-06-02 16:56:08 +02:00
Alessandro Ranellucci
49531f6f78
Fixed regression causing rotation from plater to also translate the resulting G-code. #1191
2013-05-31 19:41:31 +02:00
Alessandro Ranellucci
5c7dd2cf78
Some fixes to the cooling logic and new test suite for cooling
2013-05-31 12:18:33 +02:00
Alessandro Ranellucci
da76496988
Store config in Slic3r::GCode object
2013-05-31 11:19:36 +02:00
Alessandro Ranellucci
bbb190dc68
Generate infill using each object's bounding_box instead of full print. #1177
2013-05-19 11:35:41 +02:00
Alessandro Ranellucci
f599ed00c6
Avoid closures, move planning code to _plan() and layer G-code generation to Slic3r::GCode::Layer
2013-05-18 17:41:37 +02:00
Alessandro Ranellucci
08a0bbd7f0
Optimization: split meshes automatically when avoid_crossing_perimeters is enabled, so that we reduce the complexity of the MotionPlanner graphs. This commit includes a very large refactoring of the Model class which is now responsible for duplication and arrangement
2013-05-18 16:48:26 +02:00
Alessandro Ranellucci
55071e544f
Fix brim spacing. #1174
2013-05-16 12:29:46 +02:00
Alessandro Ranellucci
4121a7ece5
Set support material enforce layers to 0 when spiral printing
2013-05-14 13:54:24 +02:00
Alessandro Ranellucci
a86c48d85c
Disable retract on layer change when doing spiral vase; also check that we're printing a single-material object
2013-05-13 21:55:34 +02:00
Alessandro Ranellucci
ccdb29ddc9
New --spiral-vase option to continously raise Z when printing single-walled vases. #997
2013-05-13 20:15:45 +02:00
Alessandro Ranellucci
6e216e2fd9
New traverse_pt()
2013-05-11 09:24:48 +02:00
Alessandro Ranellucci
6b8894cf9a
Rename ex_int_offset2 to offset2_ex
2013-05-10 13:56:29 +02:00
Alessandro Ranellucci
5bf3f5f5e4
Make sure brim paths don't overlap
2013-05-10 13:47:40 +02:00
Alessandro Ranellucci
4aad2f6243
Smarter ordering of brim loops. #687
2013-05-09 14:52:56 +02:00
Alessandro Ranellucci
bc9ff47d3f
New module to output SVG vertical sections of extrusion paths with real width and height. The commit includes a bugfix to the Polyline->grow() method and some simplification in the Line class which is now child of Polyline
2013-04-27 15:02:13 +02:00
Mark Hindess
aac2c45450
Avoid merging meshes when there is only one mesh to merge.
...
When slicing yoda.stl it reduces peak memory usage by 5% and speeds up
slicing by 13%.
Further optimization using a simple proxy to implement the two methods
(size/extends) needed on the merge meshes is also possible and
undoubtedly worthwhile.
2013-04-18 19:50:05 +01:00
Alessandro Ranellucci
e088d9b3f7
Cache Slic3r::Fill object
2013-04-18 18:40:59 +02:00