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
Alessandro Ranellucci
b4be61b703
Bugfix: time estimates for cooling were computed for each object separately instead of the whole actual layer. #1071
2013-04-04 01:17:44 +02:00
Alessandro Ranellucci
a563801304
Merge branch 'master' of github.com:alexrj/Slic3r
2013-04-04 01:15:46 +02:00
Alessandro Ranellucci
3afeb5c7b5
Second layer commands were written multiple times
2013-04-04 00:52:11 +02:00
Devin Grady
e602aad998
inspired by f5e48a3
, a seems to work to fix 1076
2013-04-01 22:12:51 -05:00
Alessandro Ranellucci
0d6ff22e19
Merge branch 'wipe'
2013-03-31 11:36:04 +02:00
Alessandro Ranellucci
ac2356f66a
Don't crash at the end of empty prints. #1042
2013-03-30 00:36:14 +01:00
Alessandro Ranellucci
d2b451d9a1
Merge branch 'master' into wipe
2013-03-26 16:28:01 +01:00
Alessandro Ranellucci
2f046799f2
Removed offset() method from Slic3r::Polygon because it only works with ccw polygons
2013-03-26 14:03:24 +01:00
Alessandro Ranellucci
b7cd362820
Remove scale from G-code comments
2013-03-19 19:16:13 +01:00
Alessandro Ranellucci
9c122bda5e
Fix memory leak in avoid_crossing_perimeters. #1044
2013-03-19 16:02:03 +01:00
Alessandro Ranellucci
fd2a5e894a
Respect perimeter/infill order when multiple extruders are configured but only one is used
2013-03-19 11:58:03 +01:00
Alessandro Ranellucci
7de8b20bc4
New wipe feature
2013-03-17 02:22:50 +01:00
Alessandro Ranellucci
78a4ae4835
Use full flow for sparse infill by default
2013-03-17 00:21:17 +01:00
Alessandro Ranellucci
35bd5a3423
New --solid-infill-extrusion-width option
2013-03-17 00:02:31 +01:00
Alessandro Ranellucci
25554a345f
Reorder object copies using a nearest neighbor search
2013-03-16 20:56:14 +01:00
Alessandro Ranellucci
cf5adca928
New --resolution option to simplify input models
2013-03-16 19:58:34 +01:00
Alessandro Ranellucci
10b6bc9d15
Removed keep_meshes
2013-03-16 19:39:00 +01:00
Alessandro Ranellucci
33b40eda18
Always fix self-intersecting polygons that Douglas-Peucker might return
2013-03-16 18:42:56 +01:00
Alessandro Ranellucci
964accb588
Typo
2013-03-10 19:07:41 +01:00
Alessandro Ranellucci
2942485a94
New option to make infill before perimeters. #1039
2013-03-10 18:15:44 +01:00
Alessandro Ranellucci
ab3d1ac820
Give priority to infill extruder if it was used last. #940
2013-03-10 17:40:19 +01:00
Alessandro Ranellucci
107f48d894
Reduce toolchanges by giving priority to last extruder on layer change. #940
2013-03-10 17:28:03 +01:00
Alessandro Ranellucci
dac168eff0
Do each island completely if avoid_crossing_perimeters is enabled. #278
2013-03-10 16:09:03 +01:00
Alessandro Ranellucci
f10a4787b2
Fix layer ordering when printing objects with different layer heights
2013-03-10 15:36:52 +01:00
Alessandro Ranellucci
f670acb4b1
Slice a single object with multiple layer heights. :-)
2013-03-10 14:58:49 +01:00
Alessandro Ranellucci
2acda9973e
Don't apply acceleration settings to travel moves
2013-03-09 20:28:03 +01:00
Alessandro Ranellucci
e71bf48463
Add a command to lift nozzle in default start G-code
2013-03-09 19:51:09 +01:00
Alessandro Ranellucci
97e864699e
New top-infill-extrusion-width option
2013-03-07 16:00:58 +01:00
Alessandro Ranellucci
36d24ccb0b
Infill refactoring and cleanup complete
2013-03-07 15:47:32 +01:00
Alessandro Ranellucci
fafad0fd81
Code for memory usage statistics
2013-02-27 11:26:52 +01:00
Alessandro Ranellucci
c3dde74776
Fix brim and extra perimeters after recent changes to ->slices
2013-02-24 16:40:14 +01:00
Alessandro Ranellucci
08a72c0824
Use bridge math for the first solid infill layer above sparse infill. #240
2013-02-23 21:39:13 +01:00
Alessandro Ranellucci
91bcfc8a74
Remove $Slic3r::flow and $Slic3r::first_layer_flow
2013-02-22 16:08:11 +01:00
Alessandro Ranellucci
cac79c0575
New option to only infill where strictly needed for supporting ceilings
2013-02-09 23:36:32 +01:00
Alessandro Ranellucci
090e3b1fe3
Rename shortest_path to chained_path, which reflects its algorithm more correctly
2013-02-05 17:27:45 +01:00
Alessandro Ranellucci
11637d527a
Bugfix: avoid-crossing-perimeters was failing on layers only containing single walls. #978
2013-02-04 19:33:30 +01:00
Alessandro Ranellucci
8efe46e58d
New option to enforce support material on a given number of layers to improve adhesion of objects with poor footprint
2013-02-04 15:48:57 +01:00
Alessandro Ranellucci
9222526e03
Customizable number of interface layers for support material and raft
2013-02-03 17:23:50 +01:00
Alessandro Ranellucci
c7b4d99d7e
Generate raft automatically even when support material is disabled
2013-02-02 16:16:43 +01:00
Alessandro Ranellucci
f1230312e3
Fixes for merge issues
2013-01-26 23:55:47 +01:00
Alessandro Ranellucci
61b164b539
Merge branch 'master' into avoid-crossing-perimeters
...
Conflicts:
lib/Slic3r/GCode.pm
lib/Slic3r/Print.pm
2013-01-26 21:45:17 +01:00
Mike Sheldrake
65ef3b35d9
limit layer requests to object->layer_count when preparing skirt #901
...
Each object on the plater was being queried for points for
producing the skirt for all skirt layers, even when the object was
shorter than the skirt.
layers of the print
2013-01-18 08:36:01 -08:00
Alessandro Ranellucci
177347137f
New G-code flavor for Sailfish (thanks to fros1y for working on it). #826
2013-01-17 14:56:31 +01:00
Alessandro Ranellucci
ad9be0e4d7
Bugfix: crash when reading/writing files to paths containing non-ASCII characters on Windows. #651 #865
2013-01-13 10:18:34 +01:00
Alessandro Ranellucci
48e00a4c40
Merge branch 'master' into avoid-crossing-perimeters
...
Conflicts:
lib/Slic3r/GCode.pm
lib/Slic3r/GUI/Plater.pm
lib/Slic3r/Print.pm
lib/Slic3r/SVG.pm
2013-01-12 19:00:18 +01:00
Alessandro Ranellucci
3d03faf0b2
Remove leftover M501
2013-01-10 17:19:38 +01:00
Alessandro Ranellucci
32fd58d531
Acceleration control. #185
2013-01-10 15:29:40 +01:00
Alessandro Ranellucci
30d9b2e508
Refactoring: initialize all layers at once and avoid duplication of slicing height math. #637
2013-01-01 23:28:48 +01:00
Alessandro Ranellucci
15f07197d8
Don't store ->surfaces anymore. Save memory, save time
2012-12-22 23:57:39 +01:00
Alessandro Ranellucci
dcc0ce78db
Fix warning
2012-12-20 17:03:50 +01:00
Alessandro Ranellucci
ea304a4803
Bugfix: custom layer G-code was applied before Z change, and not after like it was documented. #869
2012-12-20 17:01:01 +01:00
Alessandro Ranellucci
68e302fe27
Fix exporting G-code
2012-11-23 11:24:04 +01:00
Alessandro Ranellucci
2abf2be781
New testing framework
2012-11-21 20:41:14 +01:00
Alessandro Ranellucci
de0640603a
Append full config when --gcode-comments is enabled
2012-11-18 19:53:52 +01:00
Alessandro Ranellucci
c99ff0cfe2
Apply Douglas-Peucker to all paths before generating G-code
2012-11-18 17:38:08 +01:00
Alessandro Ranellucci
93bb2c1056
Bugfix: fatal error when using brim and no skirt. #784
2012-11-07 23:06:32 +01:00
Alessandro Ranellucci
1db614a5a9
Revert "Use G92 to apply Z offset. #486 " #778
2012-11-06 20:04:44 +01:00
Alessandro Ranellucci
ab2b31672f
Fixed regression causing a long string between copies
2012-11-06 19:54:21 +01:00
Alessandro Ranellucci
0a912c6316
Only apply min_skirt_length on bottom layer
2012-11-05 14:26:55 +01:00
Alessandro Ranellucci
68e1edab80
Require Math::Clipper 1.14 and increase scale factor for offset(). #720
2012-11-05 00:17:46 +01:00
Mark Hindess
705d6b3179
Quick fix for support material.
2012-11-02 22:39:08 +00:00
Alessandro Ranellucci
25d88bddff
Remove the change_layer method
2012-10-30 14:11:32 +01:00
Alessandro Ranellucci
4c6fe0b3d4
Fixed regression preventing lift to work correctly
2012-10-30 10:45:55 +01:00
Alessandro Ranellucci
887634e1e2
Use G92 to apply Z offset. #486
2012-10-29 19:54:04 +01:00
Alessandro Ranellucci
e9ae62a9d1
New --min-skirt-length option. #269
2012-10-29 11:17:57 +01:00
Alessandro Ranellucci
c25e54a830
Expose perimeter/infill/support material extrusion widths in G-code comments
2012-10-29 00:31:25 +01:00
Alessandro Ranellucci
8da4151c6d
Fix regression causing skirt to be printed at Z = 0 after a recent commit
2012-10-28 19:24:24 +01:00
Alessandro Ranellucci
ecd054a57c
Don't emit T0 at the beginning of the file, so that it's generated automatically just right before starting the print
2012-10-28 17:29:01 +01:00
Alessandro Ranellucci
ccb49a8439
Do a slightly thinner interface layer at the top of support material structures by taking into account the diameter of bridge extrudates (nophead's idea)
2012-10-28 16:59:20 +01:00
Alessandro Ranellucci
cee3864fc9
Independently set number of top/bottom solid layers. #676
2012-10-25 12:21:04 +02:00
Alessandro Ranellucci
31c2e50fc6
Bugfix: bed temperature wasn't being set after the first layer when first layer bed temperature was set to zero. #760
2012-10-24 22:57:19 +02:00
Alessandro Ranellucci
50f6909475
Don't apply slowdown factor to bridges. #640
2012-10-24 22:55:03 +02:00
Alessandro Ranellucci
355031fe2f
Remove unnecessary retractions
2012-10-24 19:38:18 +02:00
Alessandro Ranellucci
44016b38c5
Distribute skirt loops across all extruders
2012-10-24 19:13:40 +02:00
Alessandro Ranellucci
1627268fd4
Merge branch 'master' into avoid-crossing-perimeters
...
Conflicts:
lib/Slic3r/GCode.pm
2012-10-24 11:49:31 +02:00
Alessandro Ranellucci
c793a2657f
Replace Math::ConvexHull with Math::ConvexHull::MonotoneChain. #722
2012-10-22 15:29:54 +02:00
Alessandro Ranellucci
f5f9574173
Merge pull request #722 from mesheldrake/remove-dups-before-hull
...
use remove_coinciding_points before convex_hull
2012-10-15 02:49:30 -07:00
Alessandro Ranellucci
769134bb6f
Fixed regression causing skirt ignoring the first layer extrusion width override. #728
2012-10-15 10:57:15 +02:00
Alessandro Ranellucci
8ac367bfa7
If brim overlaps with skirt, make brim around skirt too instead of just ignoring skirt on first layer
2012-10-14 22:10:49 +02:00
Alessandro Ranellucci
22b312395a
Fix SVG/DLP support material. #673
2012-09-28 16:32:53 +02:00
Alessandro Ranellucci
f50b0040ef
Bugfix: the grow() method wasn't working properly, causing bad brim/support material interface. #639
2012-09-28 15:27:33 +02:00
Mike Sheldrake
4b91496edd
use remove_coinciding_points before convex_hull
...
convex_hull returns polygons with sharp concaves sometimes when
duplicate points are present
2012-09-27 06:47:38 -07:00
Alessandro Ranellucci
bbe0a45b58
Optimization: cache scaled flow width and spacing
2012-09-23 03:03:08 +02:00
Alessandro Ranellucci
ec0d3987db
Rename materials to regions
2012-09-23 02:52:31 +02:00
Alessandro Ranellucci
e696764af8
Assign extruders and flows to materials
2012-09-23 02:40:25 +02:00
Alessandro Ranellucci
e2ab340edb
Fix positioning and other things
2012-09-22 21:03:57 +02:00
Alessandro Ranellucci
d488afd243
More work (breaks centering and internal surfaces detection)
2012-09-22 19:38:25 +02:00
Alessandro Ranellucci
02356fd613
Large refactoring to allow processing multimaterial files
2012-09-22 19:04:36 +02:00
Alessandro Ranellucci
04be94023b
Refactoring: move the 'copies' property to each Print::Object
2012-09-22 16:19:24 +02:00
Alessandro Ranellucci
037be34b7b
Bugfix: removed fatal error when generating SVG support material in some circumstances. #673
2012-09-21 16:52:05 +02:00
Alessandro Ranellucci
c95cd5ac38
Merge branch 'master' into avoid-crossing-perimeters
2012-09-21 15:36:45 +02:00
Alessandro Ranellucci
e40f32995f
Finish GUI decoupling
2012-09-21 15:04:33 +02:00
Alessandro Ranellucci
757515ba17
New [print_preset], [filament_preset] and [printer_preset] variables. #675
2012-09-21 15:04:18 +02:00
Alessandro Ranellucci
6adf98edaf
Fix regression causing SVG/DLP support material to crash the application. #668
2012-09-21 15:04:16 +02:00
Alessandro Ranellucci
37ae2e1e2d
Use support material extruder for brim. #653
2012-09-21 15:04:16 +02:00
Alessandro Ranellucci
47c5d410ea
Remove the initial retraction compensation. Not only it is not very good for multi-head setups, but it also caused wrong first layer Z when lift was enabled. #655
2012-09-21 15:04:15 +02:00
Alessandro Ranellucci
94a096f1d2
Support legacy config files not containing first_layer_height #631
2012-09-21 15:04:11 +02:00
Alessandro Ranellucci
cc8d8bd26f
Merge branch 'master' into avoid-crossing-perimeters
...
Conflicts:
README.markdown
lib/Slic3r/Config.pm
lib/Slic3r/GCode.pm
lib/Slic3r/Print.pm
slic3r.pl
2012-09-12 16:04:16 +02:00
Alessandro Ranellucci
7a5071f66c
New [print_preset], [filament_preset] and [printer_preset] variables. #675
2012-09-12 15:29:44 +02:00
Alessandro Ranellucci
628cc52338
Fix regression causing SVG/DLP support material to crash the application. #668
2012-09-06 11:28:24 +02:00
Alessandro Ranellucci
f41a6af343
Use support material extruder for brim. #653
2012-09-06 11:01:44 +02:00
Alessandro Ranellucci
e0a96c00b3
Remove the initial retraction compensation. Not only it is not very good for multi-head setups, but it also caused wrong first layer Z when lift was enabled. #655
2012-09-06 10:44:48 +02:00
Alessandro Ranellucci
b37af86bef
Support legacy config files not containing first_layer_height #631
2012-08-30 23:04:56 +02:00
Alessandro Ranellucci
191de5d078
Unfinished work for decoupling GUI from the Print object (goal = more speed for manipulation, less memory usage)
2012-08-29 19:37:27 +02:00
Alessandro Ranellucci
f90520ed06
Refactoring: new Slic3r::Model class to represent files
2012-08-29 17:12:32 +02:00
Alessandro Ranellucci
9bd1b0f6ba
Revert "Refactoring: initialize all layers at once and avoid duplication of slicing height math". #637
...
This reverts commit 08270022dd
.
2012-08-26 17:47:00 +02:00
Alessandro Ranellucci
08270022dd
Refactoring: initialize all layers at once and avoid duplication of slicing height math
2012-08-25 20:40:44 +02:00
Alessandro Ranellucci
a1ac866b84
Refactoring: turn x_length and y_length in size
2012-08-25 20:14:01 +02:00
Alessandro Ranellucci
896641cb7e
Fixed regression causing some bridges not to be detected correctly. #629
2012-08-25 20:04:29 +02:00
Alessandro Ranellucci
c98e9515ed
Better implementation of the external motion planner
2012-08-23 21:10:04 +02:00
Alessandro Ranellucci
0eadc5adba
Manual rebase of the avoid_crossing_perimeters feature
2012-08-23 15:42:58 +02:00
Alessandro Ranellucci
b35c41c1a3
Bugfix: retraction was still not working correctly at tool change
2012-08-22 20:31:03 +02:00
Alessandro Ranellucci
4bddb66513
Always emit T0 at the beginning of a multi-extruder print
2012-08-22 19:20:34 +02:00
Alessandro Ranellucci
075213c731
Refactoring: make 'retracted' an attribute of the Extruder object
2012-08-22 18:57:03 +02:00
Alessandro Ranellucci
3c2464abf9
Bugfix: crazy temperatures were written when using sequential printing. #625
2012-08-22 17:58:38 +02:00
Alessandro Ranellucci
26e033a30c
Bugfix: brim was positioned incorrectly if no skirt was enabled. #627
2012-08-19 20:30:17 +02:00
Henrik Brix Andersen
0f327ef912
Add missing use File::Spec
2012-08-07 23:37:16 +02:00
Alessandro Ranellucci
c7858912d8
Bugfix: some paths were not considered when generating brim
2012-08-07 22:04:58 +02:00
Alessandro Ranellucci
63e77fcfd8
Refactor extruder settings
2012-08-07 20:50:54 +02:00
Alessandro Ranellucci
b7d8444ac8
Take support material into account when generating brim. #490 #501 #567
2012-08-06 20:54:49 +02:00
Alessandro Ranellucci
9bfa4118a1
Bugfix: brim and skirt collision was not precisely detected when they had similar offsets. #548
2012-08-06 20:27:10 +02:00
Henrik Brix Andersen
0e620f3ad2
Make --output accept directories. #535
2012-08-01 17:12:16 +02:00
Henrik Brix Andersen
83fccf0875
Fix auto-arrange of objects
2012-07-30 19:30:41 +02:00
Alessandro Ranellucci
4c33eabc6e
Slicing from plater was still using the default options
2012-07-29 17:02:46 +02:00
Alessandro Ranellucci
7e34244b05
Refactored configuration handling.
...
Slic3r::Config is now an object. Multiple partial config objects are used throughout the codebase as local repositories, then merged and serialized when necessary.
2012-07-27 21:16:11 +02:00
Alessandro Ranellucci
1d04e15b63
Refactor/clean up. Merge remove_small_surfaces() into prepare_fill_surfaces(), rename infill_every_layers() to combine_infill(), remove $layer->fill_boundaries, initialize layer properties explicitely for clarity.
2012-07-22 21:00:02 +02:00
Alessandro Ranellucci
3edf42e98e
Little workflow simplification
2012-07-21 15:53:38 +02:00
Alessandro Ranellucci
bce2663ed8
Restore thin walls and thin fills after last commit
2012-07-20 15:02:25 +02:00
Alessandro Ranellucci
1697cb24a6
Memory optimization and code cleanup. Don't keep deserialized paths
2012-07-20 14:39:56 +02:00
Alessandro Ranellucci
3c00573805
Reset E and compensate retraction after changing extruder
2012-07-06 19:57:58 +02:00
Mark Hindess
07f2dab5f6
Fix perimeters_* options to be singular to be consistent.
2012-06-30 23:18:15 +01:00
Alessandro Ranellucci
cbb111ee64
Fix for incomplete commit causing thin gaps to throw an error
2012-06-30 17:23:55 +02:00
Alessandro Ranellucci
5eb1982081
Bugfix: brim was extruded multiple times when sequential printing was enabled
2012-06-30 16:14:45 +02:00
Alessandro Ranellucci
a7668e0933
Revert "Reduce memory usage during gcode output by discarding processed layers."
...
This reverts commit 4d1551c305
.
2012-06-30 16:12:06 +02:00
Mark Hindess
4d1551c305
Reduce memory usage during gcode output by discarding processed layers.
...
As each layer is processed, it increases in size by a factor of two
or three so by the end the layer list gets quite big. So this removes
the list entry after it's been processed.
2012-06-29 12:33:30 +01:00
Alessandro Ranellucci
fb96cdec76
Command line options to assign perimeters and infill to different extruders
2012-06-28 16:48:56 +02:00
Alessandro Ranellucci
f9f2361acb
Allow setting different temperatures and first layer temperatures for each extruder. Also make support material extruder selection compatible with the new architecture
2012-06-28 16:22:11 +02:00
Alessandro Ranellucci
dbcfebeb66
Rename support_material_tool to support_material_extruder
2012-06-28 15:14:27 +02:00
Alessandro Ranellucci
898266fd34
Initial refactoring for supporting multiple extruders. Little speed optimization included
2012-06-28 14:44:54 +02:00
Alessandro Ranellucci
e72bd56b9d
Rename brim_thickness to brim_width
2012-06-23 22:27:59 +02:00
Alessandro Ranellucci
48addf8c3f
New feature: brim. #424
2012-06-23 21:31:29 +02:00
Alessandro Ranellucci
44c636aea1
Do not oversimplify outer perimeters and keep the full resolution of the input file. #340 #462
2012-06-23 20:08:08 +02:00
Alessandro Ranellucci
20229fccdb
Bugfix: fatal error when a layer contained nothing
2012-06-23 18:31:24 +02:00
Alessandro Ranellucci
464400a37b
Bugfix: when skirt distance was set to zero, the first loop coincided with the outer perimeter of the object
2012-06-23 17:44:05 +02:00
Alessandro Ranellucci
05e4571310
Do perimeters from outside to inside. #466
2012-06-23 17:41:44 +02:00
Alessandro Ranellucci
b926e0b27d
Support material lines need to be white
2012-06-11 20:42:39 +02:00
Alessandro Ranellucci
55ed4af06e
DLP support material in SVG output (untested)
2012-06-11 14:47:48 +02:00
Alessandro Ranellucci
1f35a3f6aa
Fixed regression preventing SVG export to work properly. #428
2012-06-11 13:50:38 +02:00
Alessandro Ranellucci
c0c84d13b8
Always set bed temperature after first layer if first layer temperature is set. #427
2012-06-11 13:43:23 +02:00
Alessandro Ranellucci
3e94add8a8
Pass config options as environment variables to post-processing scripts
2012-06-09 17:52:03 +02:00
Alessandro Ranellucci
82dd3c7a3e
New --perimeters-extrusion-width and --infill-extrusion-width options. #302
2012-06-06 18:05:03 +02:00
Alessandro Ranellucci
8a031fe501
New --first-layer-extrusion-width option. #385
2012-06-06 17:29:12 +02:00
Alessandro Ranellucci
aedb6cc35f
Accept both relative and absolute extrusion width values. #151
2012-06-06 15:23:34 +02:00
Alessandro Ranellucci
ea83c562c1
Fixed regression caused by sequential printing code preventing skirt to extend past first layer. #396
2012-05-31 09:37:39 +02:00
Alessandro Ranellucci
8aa20cd784
Fixed the "Export SVG..." menu item. #399
2012-05-30 12:06:01 +02:00
Alessandro Ranellucci
bc4b4a981b
Take extruder clearance radius into account when autopositioning
2012-05-29 09:38:53 +02:00
Alessandro Ranellucci
34e3dfdb08
Large memory savings (down to about 50%) for high-res input files
2012-05-28 19:58:27 +02:00
Alessandro Ranellucci
5a78111efa
Options to set extruder clearance for sequential printing and graphical preview of collisions
2012-05-23 11:47:52 +02:00
Alessandro Ranellucci
e7d609db12
Fix previous commit about slicing from smallest to tallest
2012-05-21 20:23:17 +02:00
Alessandro Ranellucci
e4b37db13f
Print objects from the smallest to the tallest to avoid extruder collisions (this applies when using the complete_objects setting)
2012-05-21 20:19:30 +02:00
Alessandro Ranellucci
181f750618
Invert SVG colors for DLP printing. #380
2012-05-21 18:29:19 +02:00
Alessandro Ranellucci
ce6b4aeaee
New option to print each object completely before moving onto next one (watch out for extruder collisions, Slic3r isn't doing any check since it doesn't know its shape)
2012-05-20 20:08:59 +02:00
Alessandro Ranellucci
731367a6a0
Bugfix, support material still not working well after memory optimizations
2012-05-20 11:44:30 +02:00
Alessandro Ranellucci
1998801a58
Read OBJ files. #324
2012-05-20 11:40:37 +02:00
Alessandro Ranellucci
b246480535
Massive reduction of memory usage (down to one third).
2012-05-19 17:57:38 +02:00
Alessandro Ranellucci
aa9563f00b
More constants, less strings => ess memory usage
2012-05-19 15:40:11 +02:00
Alessandro Ranellucci
edbdc5ec55
New automatic detection of additional required perimeters for better quality with domes and sloping walls. #198
2012-05-05 16:36:10 +02:00
Alessandro Ranellucci
847cf3c5b8
Bugfix: when slicing the same plate multiple times, the results contained old and duplicate data
2012-05-02 15:20:05 +02:00
Alessandro Ranellucci
7ee08be0b8
Allow [version], [timestamp], [year], [month], [day], [hour], [minute], [second] in filenames. #318
2012-05-01 15:02:33 +02:00
Alessandro Ranellucci
49ff9a0ebe
Emit G92 E0 when in relative mode. #322
2012-05-01 14:49:41 +02:00
Alessandro Ranellucci
0f3cbe6fa4
Bugfix: G-code errors with multiple objects
2012-05-01 13:18:01 +02:00
Alessandro Ranellucci
54e1d934a7
Fixed regression with support material
2012-04-30 23:36:49 +02:00
Alessandro Ranellucci
d03925a18d
New GUI with plating facilities
2012-04-30 14:56:01 +02:00
Alessandro Ranellucci
4bc49dcc5b
Fixed regression throwing fatal error when using --duplicate-grid
2012-04-29 19:01:18 +02:00
Alessandro Ranellucci
ed4a5739f6
Multiple objects autoplating (--merge, from command line only)
2012-04-29 12:51:20 +02:00
Alessandro Ranellucci
285caffa9c
Omit G92 if No Extrusion
2012-04-16 20:06:53 +02:00
Alessandro Ranellucci
96d5e513b8
Rename $Slic3r::resolution to $Slic3r::scaling_factor
2012-04-16 14:05:38 +02:00
Alessandro Ranellucci
d51ba94e8a
Remove XXX from dependencies
2012-04-16 14:03:36 +02:00
Alessandro Ranellucci
356e750cf4
Bugfix: support material was oversimplifying the first outer perimeter. #314
2012-04-16 13:48:55 +02:00
Alessandro Ranellucci
0faebad4da
Make new support material algorithm effective
2012-04-14 19:47:33 +02:00
Alessandro Ranellucci
74c02e7aed
added skirt to print size calculation for --duplicate
...
Conflicts:
lib/Slic3r/Print.pm
2012-04-11 20:44:09 +02:00
Michael Moon
757f8a2404
move duplicate stuff around a bit
2012-04-12 03:30:15 +10:00
Alessandro Ranellucci
e58ed195fd
New --bed-size option
2012-04-11 16:30:58 +02:00
Alessandro Ranellucci
4ae551a424
Ditch --duplicate-x and --duplicate-y, add --duplicate-grid
2012-04-11 15:58:09 +02:00
Alessandro Ranellucci
a8adff53ca
New implementation of support material
2012-04-09 22:06:30 +02:00
Alessandro Ranellucci
82a16ed8ee
Merge branch 'triffid-duplicate'
2012-04-09 15:14:40 +02:00
Michael Moon
f2edfd1a76
initial implementation of algorithm for #249
...
fix typo that put things in the wrong position
use int() builtin instead of POSIX::floor()
fix typo
use alternate method of creating local routines
remove aliases for new duplicate option
use coderefs for linear interpolate function, make binary insertion sort inline
add \n at end of die message regarding too many objects for print area
fix case where no duplication is done
fix whitespace according to slic3r coding style
assume 200x200 bed area if center is 0,0
Some cleanup to the autoarrange duplication logic
2012-04-09 15:14:07 +02:00
Alessandro Ranellucci
64e669d893
Refactored parallelization code. #154
2012-04-09 13:53:13 +02:00
Alessandro Ranellucci
68b48fa807
Multithreaded mesh processing. #154
2012-04-09 12:29:47 +02:00
Alessandro Ranellucci
43ebaa9d94
Don't slow down travel moves. #293
2012-04-03 14:22:18 +02:00
Alessandro Ranellucci
13e573a8e4
Only output M109 if there's none in user-supplied start G-code
2012-04-03 12:50:06 +02:00
Alessandro Ranellucci
0afb5ad9dd
Bugfix: some holes were filled. #291
2012-04-02 11:40:12 +02:00
Alessandro Ranellucci
d791315b4a
Bugfix: fatal error when generating skirt for layers having only two-point thin walls. #295
2012-03-31 18:32:53 +02:00
Alessandro Ranellucci
1355833cbf
Use M109 for Makerbot bed control. #294
2012-03-31 18:24:12 +02:00
Alessandro Ranellucci
2aa786c95f
Bugfix: extrude_skirt() was assuming that a copy existed at 0,0 (not harmful but incorrect)
2012-03-26 19:47:21 +02:00
Alessandro Ranellucci
69942d2076
Bugfix: certain values of first layer height ratio caused slicing errors
2012-03-11 16:31:39 +01:00
Alessandro Ranellucci
d0807aa807
Allow to use config options in start/end G-code
2012-03-03 23:29:08 +01:00
Alessandro Ranellucci
f2032686da
Ensure fan is turned off at start if disable_fan_first_layers > 0
2012-03-03 23:18:02 +01:00
Michael Moon
35e7877437
bed temperature handling. TODO: gui elements
2012-03-03 23:08:50 +01:00
Alessandro Ranellucci
2c16509e8a
Slowdown wasn't triggered when fan_below_layer_time was set to zero. #237
2012-03-03 22:28:44 +01:00
Alessandro Ranellucci
06c22c9db3
New --fan-always-on option. #241 #110
2012-03-03 22:21:30 +01:00
Alessandro Ranellucci
c7006fed26
Bugfix: an awful _BRIDGE_FAN_END string was sometimes left in the output. #245
2012-03-03 22:16:38 +01:00
Alessandro Ranellucci
b5cba48e55
Put the relative E checkbox back in the GUI and disable M82/M83 for MakerBot
2012-03-03 21:27:33 +01:00
Alessandro Ranellucci
f0e434f8c1
Fix typo in previous commit and in config options. #234
2012-02-28 22:04:48 +01:00
Alessandro Ranellucci
0520d1645b
Bugfix: retraction wasn't triggered when moving between copies. #232
2012-02-28 21:55:32 +01:00
Alessandro Ranellucci
79bc2240fb
Use first layer temperature for M109 too
2012-02-26 15:09:28 +01:00