vibespatial.constructive.stroke¶
Classes¶
Enum where members are also (and must be) strings |
|
Enum where members are also (and must be) strings |
|
Result of a buffer kernel invocation. |
|
Functions¶
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Module Contents¶
- class vibespatial.constructive.stroke.StrokeOperation¶
Enum where members are also (and must be) strings
- BUFFER = 'buffer'¶
- OFFSET_CURVE = 'offset_curve'¶
- class vibespatial.constructive.stroke.StrokePrimitive¶
Enum where members are also (and must be) strings
- EXPAND_DISTANCES = 'expand_distances'¶
- EMIT_EDGE_FRAMES = 'emit_edge_frames'¶
- CLASSIFY_VERTICES = 'classify_vertices'¶
- EMIT_ARCS = 'emit_arcs'¶
- PREFIX_SUM = 'prefix_sum'¶
- SCATTER = 'scatter'¶
- EMIT_GEOMETRY = 'emit_geometry'¶
- class vibespatial.constructive.stroke.StrokeKernelStage¶
- name: str¶
- primitive: StrokePrimitive¶
- purpose: str¶
- inputs: tuple[str, Ellipsis]¶
- outputs: tuple[str, Ellipsis]¶
- cccl_mapping: tuple[str, Ellipsis]¶
- disposition: vibespatial.runtime.fusion.IntermediateDisposition¶
- geometry_producing: bool = False¶
- class vibespatial.constructive.stroke.StrokeKernelPlan¶
- operation: StrokeOperation¶
- stages: tuple[StrokeKernelStage, Ellipsis]¶
- fusion_steps: tuple[vibespatial.runtime.fusion.PipelineStep, Ellipsis]¶
- reason: str¶
- class vibespatial.constructive.stroke.BufferKernelResult(*, geometries: numpy.ndarray | None = None, row_count: int, fast_rows: numpy.ndarray, fallback_rows: numpy.ndarray, owned_result: vibespatial.geometry.owned.OwnedGeometryArray | None = None)¶
Result of a buffer kernel invocation.
When
owned_resultis set,geometriesis materialized lazily on first access so that callers that stay on the device-resident path never pay for a D->H transfer.- row_count¶
- fast_rows¶
- fallback_rows¶
- owned_result = None¶
- property geometries: numpy.ndarray¶
- class vibespatial.constructive.stroke.OffsetCurveKernelResult¶
- geometries: numpy.ndarray¶
- row_count: int¶
- fast_rows: numpy.ndarray¶
- fallback_rows: numpy.ndarray¶
- class vibespatial.constructive.stroke.StrokeBenchmark¶
- dataset: str¶
- rows: int¶
- fast_rows: int¶
- fallback_rows: int¶
- owned_elapsed_seconds: float¶
- shapely_elapsed_seconds: float¶
- property speedup_vs_shapely: float¶
- vibespatial.constructive.stroke.plan_stroke_kernel(operation: StrokeOperation | str) StrokeKernelPlan¶
- vibespatial.constructive.stroke.fusion_plan_for_stroke(operation: StrokeOperation | str)¶
- vibespatial.constructive.stroke.point_buffer_owned(values: collections.abc.Sequence[object | None] | numpy.ndarray, distance, *, quad_segs: int = 16) BufferKernelResult¶
- vibespatial.constructive.stroke.offset_curve_owned(values: collections.abc.Sequence[object | None] | numpy.ndarray, distance, *, quad_segs: int = 8, join_style: str = 'round', mitre_limit: float = 5.0) OffsetCurveKernelResult¶
- vibespatial.constructive.stroke.evaluate_geopandas_buffer(values, distance, *, quad_segs: int, cap_style, join_style, mitre_limit: float, single_sided: bool, prebuilt_owned=None)¶
- vibespatial.constructive.stroke.evaluate_geopandas_offset_curve(values, distance, *, quad_segs: int, join_style, mitre_limit: float)¶
- vibespatial.constructive.stroke.benchmark_point_buffer(values, *, distance: float, quad_segs: int = 16, dataset: str = 'point-buffer') StrokeBenchmark¶
- vibespatial.constructive.stroke.benchmark_offset_curve(values, *, distance: float, join_style: str = 'mitre', dataset: str = 'offset-curve') StrokeBenchmark¶