Refactored Point / MultiPoint / Polyline / Polygon:

1) Removed virtual methods. There was not really need for them.
2) Some of the virtual methods were using conversion to Lines, which
   was unnecessary and expensive.
3) Removed some nearest element search methods from Point.
This commit is contained in:
Vojtech Bubnik 2022-11-14 19:01:17 +01:00
parent 9dca8403fe
commit f1c0c61895
19 changed files with 173 additions and 264 deletions
src/libslic3r

View file

@ -116,8 +116,7 @@ namespace Slic3r {
Point pos = Point::new_scale(writer_pos(0), writer_pos(1));
// find standby point
Point standby_point;
pos.nearest_point(this->standby_points, &standby_point);
Point standby_point = nearest_point(this->standby_points, pos).first;
/* We don't call gcodegen.travel_to() because we don't need retraction (it was already
triggered by the caller) nor avoid_crossing_perimeters and also because the coordinates