geo-polygonize 0.41.0 → 0.43.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -8,6 +8,7 @@ A native Rust port of the JTS/GEOS polygonization algorithm. This crate allows y
8
8
 
9
9
  - **Robust Polygonization**: Extracts polygons from unstructured linework.
10
10
  - **Iterative Grid Noding (Unchecked)**: Splits and snaps dirty linework, without claiming certified snap-rounding guarantees.
11
+ - **Certified Fixed-Precision Noding**: Optional hot-pixel snap rounding with an independent full-noding postcondition check.
11
12
  - **Hardware Acceleration**: Uses **SIMD** instructions (via `wide` crate) for critical geometric predicates like Point-in-Polygon checks.
12
13
  - **Wasm Optimized**: Tailored for WebAssembly with `talc` allocator and binary GeoArrow support.
13
14
  - **Performance**: SIMD, spatial indexing, and optional parallel execution, with checked-in benchmark tooling.
@@ -65,6 +66,9 @@ when noding is enabled and ignore it on the non-noding fast path.
65
66
  Set `options.noding.guarantee` to `NodingGuarantee::Validate` to run an
66
67
  independent full-noding check before graph construction. Validation reports the
67
68
  first pair with an interior intersection or unnormalized collinear overlap.
69
+ Use `NodingGuarantee::CertifiedFixedPrecision` with `node_input`, `FixedGrid`,
70
+ the `Snap` backend, and `SnapStrategy::Grid` for hot-pixel snap rounding plus
71
+ that validation. Certified coordinates must fit exact integer grid indices.
68
72
 
69
73
  ### Output semantics
70
74
 
@@ -145,6 +149,10 @@ The default return shape is a stable dictionary with `polygons` as
145
149
  `SimplePolygon` values. Use `return_polygons=True` only when you want Shapely
146
150
  `Polygon` objects.
147
151
 
152
+ When provenance is enabled, coincident and partially overlapping input lines
153
+ are dissolved into one topology edge while every contributing nonzero
154
+ `line_id` remains in the polygon's sorted `boundary_line_ids`.
155
+
148
156
  `SnapStrategy::Grid` keeps topology and output coordinates on a configured
149
157
  fixed precision grid. The CFB profile uses `GeosCompat`: the grid establishes robust
150
158
  topology, then output nodes regain deterministic source coordinates to better
Binary file
Binary file
@@ -1 +1 @@
1
- export type NodingGuarantee = "Unchecked" | "Validate";
1
+ export type NodingGuarantee = "Unchecked" | "Validate" | "CertifiedFixedPrecision";
@@ -1 +1 @@
1
- export type NodingGuarantee = "Unchecked" | "Validate";
1
+ export type NodingGuarantee = "Unchecked" | "Validate" | "CertifiedFixedPrecision";
@@ -1 +1 @@
1
- export type NodingGuarantee = "Unchecked" | "Validate";
1
+ export type NodingGuarantee = "Unchecked" | "Validate" | "CertifiedFixedPrecision";
@@ -1 +1 @@
1
- export type NodingGuarantee = "Unchecked" | "Validate";
1
+ export type NodingGuarantee = "Unchecked" | "Validate" | "CertifiedFixedPrecision";