Commit Graph

101 Commits

Author SHA1 Message Date
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
cb1527f7ef Refactoring: move direction math into a single function. Includes some fixes and adjustments 2014-05-02 18:48:11 +02:00
Alessandro Ranellucci
010b71e9d4 Improvements to avoid numerical issues in bridge detection and bridge exclusion 2014-04-30 15:16:15 +02:00
Alessandro Ranellucci
1d10cd3da6 Also remove bridged perimeters area from support material 2014-04-30 01:20:18 +02:00
Alessandro Ranellucci
e7349622a2 Removed dependency on Storable; some fixes in Build.PL. #1693 2014-01-11 21:46:22 +01:00
Alessandro Ranellucci
b17d06f9d1 Finished porting BoundingBox to XS 2014-01-07 12:48:09 +01:00
Alessandro Ranellucci
a950fbe0c2 Removed more unused functions and fixed tests 2013-11-22 16:19:15 +01:00
Alessandro Ranellucci
518798beb3 Incomplete work for porting simplify() to XS 2013-11-21 20:25:24 +01:00
Alessandro Ranellucci
3aef663f7f Removed clip_with_polygon() and clip_with_expolygon() 2013-11-21 18:16:03 +01:00
Alessandro Ranellucci
50c0081d25 Update Clipper to 6.0.0 2013-11-20 11:35:58 +01:00
Alessandro Ranellucci
885ab5844e Ported regular_points() to XS and renamed it to equally_spaced_points() 2013-11-11 20:59:58 +01:00
Alessandro Ranellucci
29b83517cb Ported point_along_segment(), Polyline::length(), Polyline::clip_end() to XS 2013-10-27 22:57:25 +01:00
Alessandro Ranellucci
a99d34a91a Bad memory access in regular_points() 2013-10-27 20:55:55 +01:00
Alessandro Ranellucci
06e7a1ae68 Optimizations to regular_points(), clip_end(), clip_start() 2013-10-27 13:51:59 +01:00
Alessandro Ranellucci
4dd12b57a1 Fixed wipe (includes regression test). #1421 2013-09-06 19:14:06 +02:00
Alessandro Ranellucci
a49dc603cc Many changes and fixes to remove leaks and return objects by reference 2013-09-03 19:26:58 +02:00
Alessandro Ranellucci
1cfdf7e955 Ported Slic3r::Polyline::Collection 2013-08-30 00:06:10 +02:00
Alessandro Ranellucci
5d6fd7f4d9 Optimizations for better usage of XS code 2013-08-29 01:36:42 +02:00
Alessandro Ranellucci
b11b595c97 Ported nearest_point() and nearest_point_index() 2013-08-27 00:52:20 +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
913f401280 Merge new-support2 2013-07-29 20:50:26 +02:00
Alessandro Ranellucci
c7b6818ccf Ported offset() and offset2() 2013-07-17 00:48:29 +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
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
5409c27852 Partial GUI compatibility with XS data 2013-07-07 18:43:04 +02:00
Alessandro Ranellucci
a1e4bda670 Have Clipper.pm only return ExPolygon::XS objects 2013-07-07 15:17:09 +02:00
Alessandro Ranellucci
8d1069766b Workaround dclone() not being thread-safe 2013-07-06 12:14:49 +02:00
Alessandro Ranellucci
72f77a3420 Use dclone() in Polyline and ExPolygon too 2013-07-05 14:46:32 +02:00
Alessandro Ranellucci
8061cc6e30 Optimization in Polyline instantiation 2013-07-05 14:44:41 +02:00
Alessandro Ranellucci
c707073a73 Some fixes about overhang detection. Includes regression tests 2013-06-21 14:52:35 +02:00
Alessandro Ranellucci
ac4a0bcdd8 Refactoring: use Slic3r::Geometry::BoundingBox objects everywhere 2013-06-16 12:21:25 +02:00
Alessandro Ranellucci
7bf308c08f Fix one more centering problem caused by wrong bounding box implementation 2013-06-15 15:50:02 +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
Alessandro Ranellucci
bf809d1fd0 Use linestring_length() from Boost 2013-03-31 19:50:22 +02:00
Alessandro Ranellucci
0d6ff22e19 Merge branch 'wipe' 2013-03-31 11:36:04 +02:00
Alessandro Ranellucci
f5e48a306d Bugfix: support material and brim didn't work correctly. Includes unit test. #1074 2013-03-30 00:21:09 +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
843a700e96 Fixes for wipe 2013-03-25 23:06:18 +01:00
Alessandro Ranellucci
7de8b20bc4 New wipe feature 2013-03-17 02:22:50 +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
fa41e15c68 Fixed regression causing thin walls to be processed twice, thus producing overlapping straight paths and zigzag. #1035 2013-03-09 17:07:11 +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
2963e54d21 Use the faster polygon_multi_linestring_intersection() 2013-01-28 00:32:19 +01:00
Alessandro Ranellucci
6cb891f2db Use Boost::Geometry::Utils for Douglas-Peucker 2013-01-28 00:09:19 +01:00