Commit Graph

1809 Commits

Author SHA1 Message Date
Alessandro Ranellucci
314f377d7b Debugging code 2013-08-13 20:17:17 +02:00
Alessandro Ranellucci
ef8ce1b5ba Improvements to SVG debug tools: honor input order and support all colours 2013-08-13 10:34:49 +02:00
Alessandro Ranellucci
2b36778dc1 Fix a situation where extra perimeters prevented top shell to be fully propagated. #1387 2013-08-13 09:45:33 +02:00
Alessandro Ranellucci
36596bf569 Bugfix: alignment code for rectilinear infill caused lack of infill (regression in 948b43f). #1387 2013-08-12 20:27:25 +02:00
Alessandro Ranellucci
f1922ce7b3 Fix regression causing lack of contact infill 2013-08-12 19:19:22 +02:00
Alessandro Ranellucci
e5fe04ea7a Make sure teeth are not too tight 2013-08-12 19:10:40 +02:00
Alessandro Ranellucci
9513fa7600 Enforce some horizontal margin between object and interface/support (contact not affected) 2013-08-12 18:55:11 +02:00
Alessandro Ranellucci
ca7d4163d7 Remove jitter and overlaps in interface infill 2013-08-12 18:45:03 +02:00
Alessandro Ranellucci
7062d028d2 Bugfix: top layers were not detected correctly, causing overlap of support material and object in some situations where there were contact regions having the same Z as some top regions 2013-08-12 18:12:53 +02:00
Alessandro Ranellucci
8d413eda44 Refactoring: generate interface and support in different cycles 2013-08-11 19:25:51 +02:00
Alessandro Ranellucci
5f07d39509 Reapply perimeter only to support 2013-08-10 21:30:50 +02:00
Alessandro Ranellucci
5380b6cb33 Incomplete work to improve support material by avoiding thin columns and making sure everything is supported correctly 2013-08-10 19:39:35 +02:00
Alessandro Ranellucci
abb5d1256f Added some debugging code 2013-08-09 21:27:57 +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
548b301432 Offset projection of facets before the final union 2013-08-09 16:34:55 +02:00
Alessandro Ranellucci
b956faa153 Adapt avoid_crossing_perimeters code to the recent changes 2013-08-09 16:30:40 +02:00
Alessandro Ranellucci
3751e3813c Fix regression causing too much collapsing of infill regions 2013-08-09 16:18:21 +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
67f5b7ab14 Require --default-acceleration when other acceleration settings are used 2013-08-09 14:33:20 +02:00
Alessandro Ranellucci
99816e07a6 New --first-layer-acceleration option 2013-08-09 14:30:43 +02:00
Alessandro Ranellucci
cde662cb51 Fix collision detection for brim 2013-08-09 14:22:41 +02:00
Alessandro Ranellucci
3427b29a93 Fix wrong slices when many overlapping facets were present in the model 2013-08-08 16:27:41 +02:00
Alessandro Ranellucci
f6569cf359 Minor error causing support material to fail when first_layer_height was expressed in % (caught by regression test). #1371 2013-08-08 14:41:23 +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
4438aec12c Revert "Remove thumbnail simplification because it caused loss of very thin parts. #1327"
This reverts commit 1210b89893.

Conflicts:

	lib/Slic3r/GUI/Plater.pm
2013-08-05 20:48:09 +02:00
Alessandro Ranellucci
0ce7ebc4b8 Integerize plater thumbnails 2013-08-05 20:21:08 +02:00
Alessandro Ranellucci
d8e2cde962 Avoid problems caused in support material by layer heights being specified in configuration without the leading 0 (like .25). #1366 2013-07-31 23:44:17 +02:00
Alessandro Ranellucci
528595c7f7 Automatically ignore per-role extruders if they're not configured in Printer Settings (only in GUI expert mode) - CLI mode continues to autogenerate extruder settings. #1236 2013-07-31 20:43:19 +02:00
Alessandro Ranellucci
d83b14655a Better tooltip for raft layers 2013-07-31 20:02:24 +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
3b47e1a492 New --info option to show file info (size, volume, repair stats). Removed utils/file_info.pl 2013-07-31 15:10:11 +02:00
Alessandro Ranellucci
1b4878f305 Fix hang in new support material caused by numerical approximation leaving small polygons, as usual 2013-07-30 15:44:08 +02:00
Alessandro Ranellucci
4e13d61aed Fix retraction/Z/lift problems after recent changes 2013-07-30 12:15:40 +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
b5907dc734 Bugfix: z_offset was not applied in spiral_vase. Includes regression test #1343 2013-07-29 17:28:30 +02:00
Alessandro Ranellucci
1210b89893 Remove thumbnail simplification because it caused loss of very thin parts. #1327 2013-07-29 16:43:48 +02:00
Alessandro Ranellucci
dc766f9f73 Bugfix: the tangent edge removal algorithm was refactored the wrong way and wasn't used anymore 2013-07-29 14:56:37 +02:00
Alessandro Ranellucci
8fe38d9b71 Bugfix: fatal error when failed loops were included in slices. #1358 2013-07-29 14:17:36 +02:00
Alessandro Ranellucci
9adac636b8 Avoid G92 E0 with sailfish. #1034 2013-07-29 14:17:30 +02:00
Alessandro Ranellucci
80676f358a Keep edge lines in rectilinear infill even when the sides are not perfectly straight 2013-07-29 13:36:22 +02:00
Alessandro Ranellucci
2a2d15e422 Fix error after recent change about bridges 2013-07-29 12:15:30 +02:00
Alessandro Ranellucci
1f36406a62 Bugfix: thin bridge anchors were ignored. #304 2013-07-29 11:54:32 +02:00
Alessandro Ranellucci
948b43fe0d Don't try to align rectilinear infill if solid, otherwise there will be a gap at one side 2013-07-29 11:05:04 +02:00
Alessandro Ranellucci
51de3ce14f Switch print_z to unscaled coordinates 2013-07-29 00:27:53 +02:00
Alessandro Ranellucci
3bcb2f04ed Add spiral vase test for hollow models 2013-07-28 15:02:03 +02:00
Alessandro Ranellucci
91cade7e8f Make sure there are no gaps in spiral vase. Includes regression test. #1251 2013-07-28 13:39:15 +02:00
Alessandro Ranellucci
691c45d57f Smarter handling of hollow prints. Optimization included 2013-07-28 10:56:41 +02:00
Alessandro Ranellucci
25af3eb35f Proper fix for preventing shells to propagate too much 2013-07-27 19:41:36 +02:00
Alessandro Ranellucci
6bd4803612 Failing test case about spurious infill in hollow objects, caused by shells being correctly generated even for hollow objects - however sometimes we don't want that 2013-07-26 20:17:33 +02:00
Alessandro Ranellucci
0a8872ca6c Extend utils/dump-stl.pl to also write STL files 2013-07-26 19:25:15 +02:00
Alessandro Ranellucci
debe540018 Better name for wipe 2013-07-26 16:23:43 +02:00
Alessandro Ranellucci
aa194c8125 Fix little regression causing object height not to be updated when object in plater was scaled 2013-07-26 14:30:00 +02:00
Alessandro Ranellucci
c1c1416838 Scale layer height ranges too when scaling object in plater. #1284 2013-07-26 14:26:59 +02:00
Alessandro Ranellucci
a145f1b6aa Don't merge adjacent bridges so that more correct angles can be detected for each one 2013-07-26 12:31:44 +02:00
Alessandro Ranellucci
c69edf27e9 Bugfix: only_retract_when_crossing_perimeters was not triggering retraction when moving between islands that are covered/bridged on the above layer. #1308 2013-07-26 10:52:22 +02:00
Alessandro Ranellucci
37bf0fa53b Bugfix: medial axis thin wall detection was triggered when not needed 2013-07-26 00:13:24 +02:00
Alessandro Ranellucci
8fe228fcee Smarter ordering of gap fill 2013-07-26 00:03:28 +02:00
Alessandro Ranellucci
2b8662cf0c Temporary workarond for an upstream bug in Moo which causes failure when running with threads. #1330 2013-07-24 10:06:02 +02:00
Alessandro Ranellucci
7ad291ea64 Add ZTable to thread_cleanup() 2013-07-23 23:20:18 +02:00
Alessandro Ranellucci
aa2ad3bbd2 Fix garbage collection of shared data. #1348 2013-07-23 23:18:22 +02:00
Alessandro Ranellucci
b1147861dd Implement lower_bound() and upper_bound() methods for ZTable 2013-07-20 21:19:59 +02:00
Alessandro Ranellucci
e29aca3553 Reapply correct optimization for simplifiying fill_surfaces before performing the offset. #1325 2013-07-20 12:22:41 +02:00
Alessandro Ranellucci
1b285f3f46 Thread-safe integration of ExtrusionPath::Collection 2013-07-18 22:29:12 +02:00
Alessandro Ranellucci
c030e38908 Ported ExtrusionPath::Collection 2013-07-18 19:09:07 +02:00
Alessandro Ranellucci
0efea9e442 Ported diff() and intersection() 2013-07-17 01:21:30 +02:00
Alessandro Ranellucci
c7b6818ccf Ported offset() and offset2() 2013-07-17 00:48:29 +02:00
Alessandro Ranellucci
bf8c799685 Ported diff_ex, intersection_ex, union_ex, xor_ex 2013-07-17 00:29:09 +02:00
Alessandro Ranellucci
f7ada2b5db Ported make_clockwise() and make_counter_clockwise() 2013-07-16 21:09:29 +02:00
Alessandro Ranellucci
fe061b19ad Ported Polygon->is_counter_clockwise() and rearranged code in .cpp files 2013-07-16 21:04:14 +02:00
Alessandro Ranellucci
79db996696 Ported diff_ex() to XS 2013-07-16 20:29:15 +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
Mark Hindess
b5426ad297 Revert "Optimization: simplify fill_surfaces before the offset operation"
To workaround issue #1325 and possibly #1320.

This reverts commit 3a046e3411.
2013-07-16 10:44:52 +01: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
d0701cdcd4 Implemented Slic3r::ExtrusionLoop 2013-07-15 16:21:09 +02:00
Alessandro Ranellucci
c9749ca3b3 More integration of Slic3r::Point::XS 2013-07-15 16:04:49 +02:00
Alessandro Ranellucci
159a009f96 Fix tests here and there 2013-07-15 15:26:56 +02:00
Alessandro Ranellucci
f612d4c64e Ported ExtrusionPath to XS. Failing test for Surface 2013-07-15 12:14:22 +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
399bc80899 Ported Slic3r::Surface to XS 2013-07-14 13:05:55 +02:00
Alessandro Ranellucci
b1ad466189 Ported Slic3r::ExPolygon::Collection to XS 2013-07-14 00:38:01 +02:00
Alessandro Ranellucci
7f4dc4e248 Fix merging error 2013-07-14 00:20:03 +02:00
Alessandro Ranellucci
31809d473f Merge branch 'master' into xsdata
Conflicts:
	lib/Slic3r/GCode.pm
	xs/src/Point.hpp
2013-07-13 21:00:19 +02:00
Alessandro Ranellucci
027f8d1e53 Optimizations in the algorithm that builds loops 2013-07-13 20:56:13 +02:00
Alessandro Ranellucci
69a8bac9c9 Show a warning if we repaired the input file 2013-07-13 20:34:57 +02:00
Alessandro Ranellucci
6affa23297 Show repair stats in object info dialog 2013-07-13 20:23:03 +02:00
Alessandro Ranellucci
89fae9ee15 Make threaded perls work with XS data in plater thumbnails. Includes cleaner ->arrayref implementation 2013-07-11 19:34:37 +02:00
Alessandro Ranellucci
fb7cea3cb9 Make plater work with XS data in single-thread environment 2013-07-11 19:13:43 +02:00
Alessandro Ranellucci
87a5de193d ExPolygon::XS->rotate() 2013-07-11 18:55:51 +02:00
Alessandro Ranellucci
1506907212 More incomplete work to make the plater work with XS data 2013-07-11 16:48:44 +02:00
Alessandro Ranellucci
8d171a297e Add thread cleanup to avoid double destruction of shared XS data 2013-07-11 16:17:36 +02:00
Alessandro Ranellucci
6f6ee40dae Small optimization in case no overhang logic is required at all 2013-07-07 19:12:44 +02:00