dieussaertgeometryprocessor – BRDR - Aligning borders

# DieussaertGeometryProcessor

    processor.DieussaertGeometryProcessor(config, feedback=None)

Processor implementing the Dieussaert area-based alignment algorithm.

Unlike vertex snapping, this processor evaluates the overlap between thematic geometries and reference polygons. It decides per reference feature whether to include it fully, partially, or exclude it based on area-based thresholds.

## Attributes

Name | Type | Description
--- | --- | ---
processor_id | ProcessorID | The unique identifier for this processor (ProcessorID.DIEUSSAERT).

## Methods

Name | Description
--- | ---
process | Coordinates the alignment process for single or multi-geometries.

### process

    processor.DieussaertGeometryProcessor.process(
        input_geometry,
        reference_data,
        relevant_distance,
        mitre_limit,
        correction_distance,
        **kwargs,
    )

Coordinates the alignment process for single or multi-geometries.

If `multi_as_single_modus` is disabled, MultiPolygons are processed piecewise and merged afterward to ensure stability.

#### Parameters

Name | Type | Description | Default
--- | --- | --- | ---
input_geometry | BaseGeometry | The thematic geometry to align. | required
reference_data | AlignerFeatureCollection | The reference (target) dataset. | required
relevant_distance | float | The distance threshold for alignment decisions. | required
mitre_limit | float | Mitre limit for buffering operations. | required
correction_distance | float | Distance used for noise and sliver removal. | required
**kwargs | Any | Additional processor arguments. | `{}`

#### Returns

Name | Type | Description
--- | --- | ---
| ProcessResult | The merged or single result of the alignment process.

#### Notes

The algorithm optimizes performance by splitting the input into an ‘inner’ and ‘outer’ zone. Only the ‘outer’ zone (near the boundaries) is evaluated against reference data.

    graph TD
        Start[Input Geometry] --> Split[Split: Inner vs Outer]
        Split --> Query[Spatial Query Reference Data]
        Query --> OD[Process Open Domain]
        Query --> Ref[Process Intersecting Refs]
        OD --> Combine[Combine Results]
        Ref --> Combine
        Combine --> Post[Post-processing]
        Post --> End[ProcessResult]