Commit Graph

85 Commits (master)

Author SHA1 Message Date
Vitaliy Filippov 80abdc1da0 Experimental circular/spherical/cylindric bend modifier (issue openscad/openscad#815) 2015-05-23 13:45:15 +03:00
Liam Marshall 306cece150 Fix memory leak 25035 2015-05-15 13:11:55 -05:00
Liam Marshall 38b93fe7a7 Fix memory leak 25100 2015-05-15 12:46:30 -05:00
Marius Kintel 1d66d2154b Filter empty children before performing minkowski sum. Fixes #1196 2015-01-29 18:35:12 -05:00
Marius Kintel 083bf4313f Allow the state to track cache lookup preference. This is important to allow lookups to prefer Nef polyhedrons in cases where PolySet->Nef fails due to zero triangles. Fixes #1027 2015-01-20 16:03:31 -05:00
Marius Kintel 09e7bfc96d #1129 Fixed crash when performing empty projection 2015-01-01 23:01:09 -05:00
Marius Kintel d071ba16cb Merge pull request #1087 from openscad/offset-updates2
Update offset() parameter handling.
2014-12-22 19:18:40 -05:00
Marius Kintel f945ce3ad8 Correctly calculate arc_tolerance for Clipper 2014-12-22 16:58:22 -05:00
Torsten Paul 5a0ea7abe2 Color code warning and error messages in the console window (fixes #855). 2014-12-21 02:12:06 +01:00
Marius Kintel 2462799655 Handle a bunch of nullspace corner cases. Fixes #1029 2014-12-08 18:25:48 -05:00
Marius Kintel 94aabb05b5 #1054 Fixed memory leak 2014-12-08 00:57:28 -05:00
Marius Kintel ccea6fdde9 Bugfix: 2D scale or mirror sometimes caused flipped normals which caused larger issues downstream. Fixes #1055 2014-12-07 20:09:45 -05:00
Marius Kintel fac2340989 More correct handling of empty geometry. Should fix a few crash bugs 2014-11-27 20:40:37 -05:00
Marius Kintel 4d6db2caa7 fixes crash when intersecting 3 or more 2d objects which results in an empty polygon 2014-11-27 15:27:09 -05:00
Marius Kintel 819f5d085f Moved Polygon typedef out of PolySet class 2014-11-26 15:22:15 -05:00
Marius Kintel a3a6b66061 Ignore background nodes when checking for mixed 2D and 3D objects. Fixes #1004 2014-11-05 19:35:00 +04:00
Oskar Linde b62079a632 Mark twist-free linear extrusions of convex polygons convex 2014-09-18 23:14:21 +02:00
Marius Kintel 51c43af4f4 #337 Enabled conversion directly from Nef polyhedron to PolySets, making us able to deal with more manifold corner cases 2014-08-21 13:20:32 -04:00
Marius Kintel de6bcb1786 small reorg of cgalutils namespace 2014-08-19 22:02:08 -04:00
Marius Kintel b8bbd6f842 The minkowski module needs to pass on any given convexity value. Fixes #911 2014-08-19 13:13:20 -04:00
Marius Kintel f87ee92755 bugfix: don't crash on empty resize(). refactoring: added virtual copy() to geometry, moved resize() to CGAL_Nef_polyhedron. Fixes #862 2014-07-17 17:03:03 -04:00
Marius Kintel 328fbb9000 Allow slices to be specified independently of twist. Fixes #850 2014-06-26 16:43:12 -04:00
Oskar Linde cb2c5029c0 Faster minkowski() 2014-06-03 18:51:29 +02:00
Oskar Linde 8c977a45e5 Make sure convex objects remain convex as Nef polyhedrons 2014-06-03 18:51:29 +02:00
Marius Kintel 4ccda0f794 #784 bugfix: Missing conversion to radians 2014-05-28 22:52:21 -04:00
Oskar Linde 02cb1f0ca8 Speed up 3D convex hull() by a few orders of magnitude by using a more suitable kernel 2014-05-22 21:15:34 +02:00
Oskar Linde 35c2a5e5ca Speed up 3D hull() slightly by avoiding converting the result to Nef 2014-05-22 20:09:54 +02:00
Torsten Paul c64360d372 Merge branch 'master' into text-module
Conflicts:
	tests/CMakeLists.txt
2014-05-20 21:36:51 +02:00
Oskar Linde dfa1748c81 Bugfix: Offset with rounded join_type calculated fragments incorrectly for delta < 1 2014-05-17 14:23:46 +02:00
Ben Gamari b984297e28 GeometryEvaluator: Fix signed-ness warnings 2014-04-28 13:37:43 -04:00
Marius Kintel 2cba2a1b55 Merge branch 'master' into text-module
Conflicts:
	scripts/macosx-build-homebrew.sh
	scripts/mingw-x-build-dependencies.sh
	scripts/uni-build-dependencies.sh
	scripts/uni-get-dependencies.sh
	src/GeometryEvaluator.h
	src/MainWindow.ui
	src/clipper-utils.h
	src/mainwin.cc
	tests/CMakeLists.txt
2014-04-26 22:08:31 -04:00
Torsten Paul 49dc984bef Add offset() module to inset/outset polygons using Clipper (fixes #483). 2014-03-30 23:41:37 +02:00
Marius Kintel daf5a169dc Refactored Nef_nary_union optimization 2014-02-05 23:27:04 -05:00
Oskar Linde 2e6196761a Performance: Speed up CGAL n-ary union
By utilizing CGAL::Nef_nary_union_3, n-ary union of many objects becomes significantly
faster (more than twice as fast in a test of 20 objects).

A further optimization potential lies in sorting the unioned objects based on proximity.
2014-02-05 17:31:35 +01:00
Marius Kintel 3f42b8c6cb adapted text-module branch to refactored branch
Conflicts:
	src/GeometryEvaluator.cc
	src/GeometryEvaluator.h
	src/clipper-utils.h
	tests/CMakeLists.txt
2014-02-02 18:41:59 -05:00
Marius Kintel 1b77d945be bugfix: When trying to copy Nef polyhderons, we were just copying pointers, defeating the const 2014-01-31 00:59:59 -05:00
Marius Kintel 0600d80046 Moved special handling of intersection to ClipperUtils 2014-01-27 23:25:33 -05:00
Oskar Linde c25ead11ff Regression fix: n-ary 2d intersection() with n != 2 2014-01-27 16:25:44 +01:00
Marius Kintel c3562e26ab Fixed caching issue: Sometimes we didn't use existing objects in the CGAL cache, but recalculated the objects, causing reduced performance when reusing CGAL-calculated objects in preview mode 2014-01-26 22:32:20 -05:00
Marius Kintel 3288447e70 Added note for future enhancement of rotate_extrude 2014-01-23 20:52:47 -05:00
Marius Kintel faf1e2a3a5 bugfix: 2D minkowski was slightly broken; only one child and >2 children didn't work correctly 2014-01-19 12:27:11 -05:00
Marius Kintel dd113ae0f1 Minor simplification of minkowski2 2014-01-12 19:36:11 -05:00
Oskar Linde 295062875d Clipper based 2D Minkowski properly (hopefully) handles holes and multiple disjoint polygon components 2014-01-12 16:21:29 +01:00
Marius Kintel 09ffd9a6b7 crash fix: forgot null check of missing dxf 2014-01-06 18:13:49 -05:00
Marius Kintel b598b1ad01 hull-of-hull bug: bugxi and test for exposing it 2014-01-06 17:48:09 -05:00
Marius Kintel b482d9f15b Bugfix: We didn't cache top-level objects properly 2014-01-06 17:48:09 -05:00
Marius Kintel bc4fae0d85 small cleanup - removed redundant dim field 2014-01-06 17:48:09 -05:00
Marius Kintel d6ad2c7de1 Use cartesian points for 2D hull 2014-01-06 17:48:08 -05:00
Marius Kintel b5928655e3 Added Geometry::isEmpty, some cleanups of CGAL_Nef_polyhedron, fixed some 2D-3D-mix issues 2014-01-06 17:48:08 -05:00
Marius Kintel 18810fcbee nullptr is a C++11 keyword 2014-01-06 17:48:08 -05:00