Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Use Manifold for much faster & multithreaded CSG & minkowski operations #4533

Merged
merged 9 commits into from
Mar 18, 2023

Commits on Mar 18, 2023

  1. Configuration menu
    Copy the full SHA
    2a60aab View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    91e3c8d View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    e983bec View commit details
    Browse the repository at this point in the history
  4. [manifold] Parallel utils that uses TBB if enabled (env OPENSCAD_NO_P…

    …ARALLEL=1 forces serial)
    ochafik committed Mar 18, 2023
    Configuration menu
    Copy the full SHA
    c23a82e View commit details
    Browse the repository at this point in the history
  5. [manifold] Add ManifoldGeometry as a Manifold wrapper, handle it ever…

    …ywhere a Geometry can land.
    ochafik committed Mar 18, 2023
    Configuration menu
    Copy the full SHA
    864386c View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    ff74d50 View commit details
    Browse the repository at this point in the history
  7. [manifold] Add applyOperator3DManifold, call it from GeometryRenderer…

    … when --enable=manifold
    ochafik committed Mar 18, 2023
    Configuration menu
    Copy the full SHA
    691421e View commit details
    Browse the repository at this point in the history
  8. [manifold] Parallel minkowski + Nef fallback.

    Ported from applyMinkowskiManifold w/ a few notable differences
    - Pre-converted points instead of re-extracting and converting them over and over in the cross-product of parts phase
    - Partially-parallel operand decomposition (2 at a time), parallel parts cross-products
    - Surface mesh for hulls (conversion of api from polyhedron looks weird, but is mechanical, e.g. `h->next_on_vertex()` becomes `mesh.opposite(mesh.next(h))`)
    ochafik committed Mar 18, 2023
    Configuration menu
    Copy the full SHA
    89e8414 View commit details
    Browse the repository at this point in the history
  9. [manifold] --enable=manifold for all tests except breakages; also spl…

    …it expectations for green faces
    ochafik committed Mar 18, 2023
    Configuration menu
    Copy the full SHA
    01dd94b View commit details
    Browse the repository at this point in the history