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
9458c7db97
Fix integration of XS containers
2013-07-16 17:13:01 +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
f612d4c64e
Ported ExtrusionPath to XS. Failing test for Surface
2013-07-15 12:14:22 +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
cd1a39397b
Optimize concentric loops
2013-06-23 00:50:44 +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
5c74fd095b
Very basic implementation of 3D preview - install Wx::GLCanvas to get it working
2013-05-17 14:14:33 +02:00
Alessandro Ranellucci
430c825918
Align rectilinear and line infill across layers (new implementation). #712
2013-04-18 17:34:21 +02:00
Jesse Vincent
7ec6332141
split apart the math in nearest_point_index and short-circuit if we know the candidate is no good
2013-04-07 19:53:15 -04:00
Jesse Vincent
e8ca1e59a6
no functional change. only return from one place for clarity
2013-04-07 19:44:32 -04:00
Jesse Vincent
da0e67a891
Only look up $point's X and Y once, rather than once on every pass through the loop.
...
(Those lookups are expensive)
2013-04-07 18:28:08 -04:00
Jesse Vincent
3e8c5804fe
Inline comparable_distance_between_points
...
It was called on an incredibly hot codepath from a single place. At 12313276 calls
on my test .stl, the sub call overhead alone was a significant perf hit.
2013-04-07 18:13:40 -04:00
Jesse Vincent
060d2da7fe
Small optimization on an incredibly hot codepath.
2013-04-07 18:01:15 -04:00
Alessandro Ranellucci
33b40eda18
Always fix self-intersecting polygons that Douglas-Peucker might return
2013-03-16 18:42:56 +01:00
Alessandro Ranellucci
a412291690
Little optimization
2013-03-13 01:07:06 +01:00
Alessandro Ranellucci
26a3cd5542
Refactor chained_path(), add chained_path_items() and chained_path_points()
2013-02-06 12:03:53 +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
ae201c8f41
Optimization: avoid calculating square roots if not needed
2013-01-28 00:18:55 +01:00
Alessandro Ranellucci
f001374c6e
New implementation of the little inwards move before leaving a loop. #186
2012-12-05 11:31:35 +01:00
Alessandro Ranellucci
93310a6a81
Fix bounding_box_center()
2012-11-24 00:15:02 +01:00
Alessandro Ranellucci
5678cd562c
Fix preview after rotation in plater
2012-11-19 17:39:16 +01:00
Mike Sheldrake
5ee68aa916
$parallel_degrees_limit decreased, 3 to 0.1, #704
...
Geometry::lines_parallel() test used for collapsing adjacent colinear
lines was too loose in testing for colinearity, because of this constant
setting. Gradualy curving and high-res outer perimiters would
over-simplify into straight lines.
2012-09-27 06:14:54 -07:00
Alessandro Ranellucci
82ac4722d2
Refactoring, new size_3D function
2012-09-22 16:12:54 +02:00
Alessandro Ranellucci
b5672de3ca
Refactoring, new bounding_box_3D function
2012-09-22 16:10: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
27b71d8885
Little regressions after recent merge
2012-09-21 16:08:22 +02:00
Alessandro Ranellucci
e40f32995f
Finish GUI decoupling
2012-09-21 15:04:33 +02:00
Alessandro Ranellucci
87912cb3b0
Bugfix: only_retract_when_crossing_perimeters was almost not working. #680
2012-09-21 15:04:18 +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
a4dcbd62da
Remove recursion warning for Douglas-Peucker
2012-06-24 16:37:59 +02:00
Mark Hindess
f61a1f5a07
Create *::Geometry::nearest_point_index to speed up shortest_path method.
...
This fix gives a further 10% speedup on simcop2387's coaster.
2012-06-22 23:12:39 +01:00
Alessandro Ranellucci
7d6545dd07
Further simplification of point_in_polygon()
2012-06-17 19:09:11 +02:00
Mark Hindess
2ef565fc4d
Simplify creation of $n, @x and @y in point_in_polygon test.
...
Gives 30% speed up on simcop2387's coaster on my laptop and it cuts the
maximum resident set size too. I know this is going to be replaced but
thought this might be useful in the meantime.
2012-06-16 08:28:37 +01:00
Alessandro Ranellucci
82dd3c7a3e
New --perimeters-extrusion-width and --infill-extrusion-width options. #302
2012-06-06 18:05:03 +02:00
Alessandro Ranellucci
9f21d5b3c2
One more debugging statement left in
2012-05-19 21:03:24 +02:00
Alessandro Ranellucci
190875d3df
Debugging statement left in
2012-05-19 20:47:29 +02:00
Alessandro Ranellucci
22f8d57b36
Memory optimizations broke thin walls
2012-05-19 19:40:51 +02:00
Alessandro Ranellucci
b246480535
Massive reduction of memory usage (down to one third).
2012-05-19 17:57:38 +02:00
Alessandro Ranellucci
d03925a18d
New GUI with plating facilities
2012-04-30 14:56:01 +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
be9886eac3
Bugfix: fill escapes perimeters. #139
2012-03-04 11:26:11 +01:00
Alessandro Ranellucci
554534fcad
Optimization
2012-02-26 11:18:42 +01:00
Alessandro Ranellucci
9f5e48bd2c
Wrong optimization
2012-02-25 17:40:30 +01:00
Alessandro Ranellucci
2a86932cfe
Slight code optimizations
2012-02-25 17:16:55 +01:00
Alessandro Ranellucci
cc695c6c22
Support material: refactoring
2012-02-25 16:23:41 +01:00