Commit Graph

82 Commits (cc4b633e436ce028b911345b987e48ba5e96fae8)

Author SHA1 Message Date
Marius Kintel 5a4ff8e39a Use CLipperLib's PolyTree to identify negative contours 2014-01-06 17:48:07 -05:00
Marius Kintel c9d372d4db Extract clipper operations to ClipperLib::apply(), added sanitized flag to Polygon2d 2014-01-06 17:48:07 -05:00
Marius Kintel dbd8f78d10 RenderNode is now the same as any abstract node 2014-01-06 17:48:07 -05:00
Marius Kintel 90be2bc10d Implemented intersection_for 2014-01-06 17:48:07 -05:00
Marius Kintel af578b9f47 Sanitize input polygons for filename parameter to extrude modules 2014-01-06 17:48:07 -05:00
Marius Kintel a8ed295b22 Cleanup: Removed redundant code 2014-01-06 17:48:06 -05:00
Marius Kintel c9366d1dcb reuse coordinates for last ring of rotate_extrude 2014-01-06 17:48:06 -05:00
Marius Kintel 0f6e5860e8 minor bugfixes after running tests 2014-01-06 17:48:06 -05:00
Marius Kintel 7efac3940e Use GeometryEvaluator instead of CGALEvaluator. A bunch of refactoring and fixes as a result of that. Renamed GUI menu items to reflect preview vs. render 2014-01-06 17:48:06 -05:00
Marius Kintel 4733216ee4 Upgraded ClipperLib to 6.1.2 - fixes a projection crash 2014-01-06 17:48:06 -05:00
Marius Kintel 2726a6853f Implemented resize 2014-01-06 17:48:06 -05:00
Marius Kintel 698aa54998 Implemented 3D transform of PolySets, removed some Grid usage, improved PolySet -> Polyhedron conversion, optimized operations with only one child 2014-01-06 17:48:06 -05:00
Marius Kintel 33f6f8d285 Adapt to related changes in master 2014-01-06 17:48:05 -05:00
Marius Kintel 8bc3d52516 Enforce x > 0 for rotate_extrude 2014-01-06 17:48:05 -05:00
Marius Kintel 05e7f63ffc Don't convert empty clipper result to Polygon2d 2014-01-06 17:48:05 -05:00
Marius Kintel 6298ccd188 Refactoring to facilitate more sharing of code between CGALEvaluator, GeometryEvaluator and CGALUtils 2014-01-06 17:48:05 -05:00
Marius Kintel 041b6c12da hull 2D and 3D implementation 2014-01-06 17:48:05 -05:00
Marius Kintel a67452711b Implemented minkowski (2D and 3D) 2014-01-06 17:48:05 -05:00
Marius Kintel 54ddd63f08 This should fix Clipper-based non-cut projection 2014-01-06 17:48:05 -05:00
Marius Kintel d4112fed2e bugfix: don't insert Nef polyhedrons into the GeometryCache as it will compete with PolySets needed for OpenCSG rendering 2014-01-06 17:48:05 -05:00
Marius Kintel 377c8adde4 Implemented non-cut projection using ClipperLib. Upgraded ClipperLib to V6 2014-01-06 17:48:05 -05:00
Marius Kintel 41b938bf68 bugfix: ClipperLib usage was not handling polygons with internal holes properly 2014-01-06 17:48:04 -05:00
Marius Kintel 73256de438 Moved shared CGAL operations to cgalutils 2014-01-06 17:48:04 -05:00
Marius Kintel aea83d2bcb Implemented file parameter to extrude nodes 2014-01-06 17:48:04 -05:00
Marius Kintel b59a61c4e6 Fix for linear_extrude with center 2014-01-06 17:48:04 -05:00
Marius Kintel 87f73263fc Made CGAL_Nef_polyhedron a Geometry subtype, implemented 3D transforms, implemented projection, implemented render 2014-01-06 17:48:04 -05:00
Marius Kintel 44b5ee1d6d Handle CgaladvNodes 2014-01-06 17:48:04 -05:00
Marius Kintel 40bd253912 bugfix: Proper cache handling of visitor 2014-01-06 17:48:04 -05:00
Marius Kintel 6cc0a20f2c Implemented import to Polygon2d, fixed twist bug, added convexity support 2014-01-06 17:48:04 -05:00
Marius Kintel 1a65f0ba48 Implemented rotate_extrude, basic support for 2D CSG, fixed some linear_extrude issues 2014-01-06 17:48:04 -05:00
Marius Kintel 64442eccbd Basic linear_extrude now works 2014-01-06 17:48:04 -05:00
Marius Kintel db7ba5b204 Preliminary large refactoring: Created GeometryEvaluator as a replacement for PolySetEvaluator. Use ClipperLib for 2D CSG (first baby steps). This design is far from perfect but sacrifice design for staying in the green. This version is broken, but can render primitives. 2014-01-06 17:48:03 -05:00