Operation::QueryHasSelfIntersections

Checks if a mesh has self-intersections within a surface

Given a mesh with a surface that enabled SurfaceBuilder::AllowSelfIntersections, compute if there are actually such intersections present.

The result is stored in a TypedBlob with BlobType::QueryResult and DataSlot::QueryResultBool.

Note:
the query result is only available after the Operation was executed.
Note:
At least one surface must have enabled SurfaceBuilder::AllowSelfIntersections. (i.e. we detect if the flag can be safely turned off, not if it was mistakenly disabled.)
Note:
there is currently no way to query which surface has self-intersections specifically. Should this limit your use case, please contact support.

CAUTION: do not confuse SurfaceBuilder::AllowSelfIntersections and MeshBuilder::AllowSurfaceIntersections.

Signature

class Operation:
    // Checks if a mesh has self-intersections within a surface
    fun queryHasSelfIntersections(
        mesh: MeshOperand,
    ) -> TypedBlob