Skip to content

Split solid into disconnected parts #15

@wtaisto

Description

@wtaisto

Say I had a solid that represented a large box, and then subtracted from it a large skinny plane through the middle, basically cutting the large box into 2 pieces. Is there a way to detect the fact that the result actually contains 2 separate watertight entities?
I have a simple attempt at this working based on:

  1. Enumerating all of the polygons in the solid
  2. Build a set of graphs where each node is a polygon and each edge means a pair of polygons share a vertex
  3. Detecting the number of connected graphs generated

The above approach feels a bit brute-force, and there are cases where it will fail, such as a pair of cubes whose interiors do not overlap in space but the cubes share a single corner vertex, or share a single edge without faces touching.

Is this idea of "a Solid contains multiple bounded regions" somehow available via your API directly?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions