mirror of
https://github.com/SoftFever/OrcaSlicer.git
synced 2025-10-26 10:11:10 -06:00
circular, convex, concave) and performs efficient collision detection agains these build volumes. As of now, collision detection is performed against a convex hull of a concave build volume for efficency. GCodeProcessor::Result renamed out of GCodeProcessor to GCodeProcessorResult, so it could be forward declared. Plater newly exports BuildVolume, not Bed3D. Bed3D is a rendering class, while BuildVolume is a purely geometric class. Reduced usage of global wxGetApp, the Bed3D is passed as a parameter to View3D/Preview/GLCanvas. Convex hull code was extracted from Geometry.cpp/hpp to Geometry/ConvexHulll.cpp,hpp. New test inside_convex_polygon(). New efficent point inside polygon test: Decompose convex hull to bottom / top parts and use the decomposition to detect point inside a convex polygon in O(log n). decompose_convex_polygon_top_bottom(), inside_convex_polygon(). New Circle constructing functions: circle_ransac() and circle_taubin_newton(). New polygon_is_convex() test with unit tests. |
||
|---|---|---|
| .. | ||
| ArrangeJob.cpp | ||
| ArrangeJob.hpp | ||
| FillBedJob.cpp | ||
| FillBedJob.hpp | ||
| Job.cpp | ||
| Job.hpp | ||
| NotificationProgressIndicator.cpp | ||
| NotificationProgressIndicator.hpp | ||
| PlaterJob.cpp | ||
| PlaterJob.hpp | ||
| ProgressIndicator.hpp | ||
| RotoptimizeJob.cpp | ||
| RotoptimizeJob.hpp | ||
| SLAImportJob.cpp | ||
| SLAImportJob.hpp | ||