Skip to content

Commit e492e8d

Browse files
authored
V2.2.1 (elalish#589)
* added notes about twistDegree and nDivisions * update version * removed perf comparison figure it is pretty outdated considering we don't have the GPU backend anymore and performance is different now.
1 parent c6dcf54 commit e492e8d

File tree

6 files changed

+13
-12
lines changed

6 files changed

+13
-12
lines changed

README.md

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,12 @@
11
[![codecov](https://codecov.io/github/elalish/manifold/branch/master/graph/badge.svg?token=IIA8G5HVS7)](https://codecov.io/github/elalish/manifold)
2+
[![PyPI version](https://badge.fury.io/py/manifold3d.svg)](https://badge.fury.io/py/manifold3d)
3+
[![npm version](https://badge.fury.io/js/manifold-3d.svg)](https://badge.fury.io/js/manifold-3d)
24
[![twitter](https://img.shields.io/twitter/follow/manifoldcad?style=social&logo=twitter)](https://twitter.com/intent/follow?screen_name=manifoldcad)
35

46
## Users
57

68
[OpenSCAD](https://openscad.org/), [IFCjs](https://ifcjs.github.io/info/), [Grid.Space](https://grid.space/), and [OCADml](https://github.com/OCADml/OManifold) have all integrated our Manifold geometry kernel! Why? Because its reliability is guaranteed and it's 1,000 times faster than other libraries. See our [usage](https://github.com/elalish/manifold/discussions/340) and [performance](https://github.com/elalish/manifold/discussions/383) discussions for all the latest and to add your own projects & analyses.
79

8-
For example, here is a log-log plot of Manifold's performance vs. earlier OpenSCAD geometry backends:
9-
10-
<img src="https://elalish.github.io/manifold/samples/models/perfSpheres.png" width="350px"/>
11-
1210
## [ManifoldCAD.org](https://manifoldcad.org)
1311

1412
If you like OpenSCAD / JSCAD, you might also like ManifoldCAD - our own solid modelling web app. Our WASM is not multithreaded yet, but it's still quite fast and a good way to test out our Manifold library.
@@ -29,7 +27,7 @@ of this repository may solve the problem.
2927

3028
[Manifold](https://github.com/elalish/manifold) is a geometry library dedicated to creating and operating on manifold triangle meshes. A [manifold mesh](https://github.com/elalish/manifold/wiki/Manifold-Library#manifoldness) is a mesh that represents a solid object, and so is very important in manufacturing, CAD, structural analysis, etc. Further information can be found on the [wiki](https://github.com/elalish/manifold/wiki/Manifold-Library).
3129

32-
This is a modern C++ library that Github's CI verifies builds and runs on a variety of platforms. Additionally, we build bindings for JavaScript ([manifold-3d](https://www.npmjs.com/package/manifold-3d) on npm), Python, and C to make this library more portable and easy to use.
30+
This is a modern C++ library that Github's CI verifies builds and runs on a variety of platforms. Additionally, we build bindings for JavaScript ([manifold-3d](https://www.npmjs.com/package/manifold-3d) on npm), Python ([manifold3d](https://pypi.org/project/manifold3d/)), and C to make this library more portable and easy to use.
3331

3432
System Dependencies (note that we will automatically download the dependency if there is no such package on the system):
3533
- [`GLM`](https://github.com/g-truc/glm/): A compact header-only vector library.

bindings/wasm/package.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "manifold-3d",
3-
"version": "2.1.0",
3+
"version": "2.2.1",
44
"description": "Geometry library for topological robustness",
55
"main": "manifold.js",
66
"files": [
@@ -36,4 +36,4 @@
3636
"url": "https://github.com/elalish/manifold/issues"
3737
},
3838
"homepage": "https://github.com/elalish/manifold#readme"
39-
}
39+
}

flake.nix

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,7 @@
5252
}: pkgs.stdenv.mkDerivation {
5353
inherit doCheck;
5454
pname = "manifold-${parallel-backend}";
55-
version = "2.2.0";
55+
version = "2.2.1";
5656
src = self;
5757
nativeBuildInputs = (with pkgs; [
5858
cmake
@@ -103,7 +103,7 @@
103103
parallelBackends)) // {
104104
manifold-js = pkgs.buildEmscriptenPackage {
105105
name = "manifold-js";
106-
version = "beta";
106+
version = "2.2.1";
107107
src = self;
108108
nativeBuildInputs = (with pkgs; [ cmake python39 ]);
109109
buildInputs = [ pkgs.nodejs ];
@@ -134,7 +134,7 @@
134134
# but how should we make it work with other python versions?
135135
manifold3d = with pkgs.python3Packages; buildPythonPackage {
136136
pname = "manifold3d";
137-
version = "2.2.0";
137+
version = "2.2.1";
138138
src = self;
139139
propagatedBuildInputs = [
140140
numpy

pyproject.toml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,13 @@
11
[project]
22
name = "manifold3d"
3-
version = "2.2.0"
3+
version = "2.2.1"
44
authors = [
55
{ name="Emmett Lalish", email="[email protected]" },
66
]
77
description = "Library for geometric robustness"
88
readme = "README.md"
99
classifiers = [
10-
"Development Status :: 4 - Beta",
10+
"Development Status :: 5 - Production/Stable",
1111
"License :: OSI Approved :: Apache Software License",
1212
"Operating System :: OS Independent",
1313
"Programming Language :: C++",

samples/models/perfSpheres.png

-105 KB
Binary file not shown.

src/manifold/src/constructors.cpp

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -220,6 +220,9 @@ Manifold Manifold::Sphere(float radius, int circularSegments) {
220220
/**
221221
* Constructs a manifold from a set of polygons by extruding them along the
222222
* Z-axis.
223+
* Note that high twistDegrees with small nDivisions may cause
224+
* self-intersection. This is not checked here and it is up to the user to
225+
* choose the correct parameters.
223226
*
224227
* @param crossSection A set of non-overlapping polygons to extrude.
225228
* @param height Z-extent of extrusion.

0 commit comments

Comments
 (0)