vibespatial.overlay.assemble¶
Polygon output assembly from overlay face data.
This module contains the GPU and utility functions for assembling polygon
output from half-edge graph faces produced by the overlay pipeline.
Extracted from overlay/gpu.py to reduce module size; see ADR-0016.
Attributes¶
Functions¶
Return a device mask for right parts properly contained by their left row. |
|
Return a device mask for groups admitted by complement assembly. |
|
Assemble |
Module Contents¶
- vibespatial.overlay.assemble.cp = None¶
- vibespatial.overlay.assemble.logger¶
- vibespatial.overlay.assemble.classify_grouped_polygonal_complement_parts_gpu(left: vibespatial.geometry.owned.OwnedGeometryArray, right_parts: vibespatial.geometry.owned.OwnedGeometryArray, grouped)¶
Return a device mask for right parts properly contained by their left row.
- vibespatial.overlay.assemble.classify_grouped_polygonal_complement_groups_gpu(left: vibespatial.geometry.owned.OwnedGeometryArray, right_parts: vibespatial.geometry.owned.OwnedGeometryArray, grouped)¶
Return a device mask for groups admitted by complement assembly.
- vibespatial.overlay.assemble.assemble_grouped_polygonal_complement_gpu(left: vibespatial.geometry.owned.OwnedGeometryArray, right_parts: vibespatial.geometry.owned.OwnedGeometryArray, grouped, *, support_mask=None, right_ring_capacity: int | None = None, right_coord_capacity: int | None = None) vibespatial.geometry.owned.OwnedGeometryArray | None¶
Assemble
left - grouped_union(right_parts)from polygon rings.Physical shape: one logical Polygon row on the left per group, a row-indirected Polygon-part capacity on the right, and a device
NativeGroupedcarrier mapping those parts back to left rows. Every right exterior is a subtraction boundary. Every right interior is retained as an island, and nested right parts are attached to the nearest containing island so valid MultiPolygon nesting survives without rowwise constructive fallback.