Version: [5437] Align Features to Path 10.2.0

v10.2.0: Smart Fit mode + Square End audit. New METHOD_SMART_FIT adds
(1) intersection-significance pre-filter: features that only clip a
corner of the buffer (L-corner pulls, crossing lines) are skipped
based on a configurable overlap-ratio threshold; (2)
proximity-weighted vertex movement: vertices near the path snap almost
fully, distant vertices move gently (quadratic falloff), eliminating
aggressive global pull. UI: new "Smart Fit" method card between "Fit
to Path" and "Preserve Shape"; Advanced panel grows a Smart Fit
Options section (Min. Overlap % spinner + Proximity-weighted checkbox)
visible only in Smart Fit mode. Square End buffer preview
(_update_tol_preview, _on_path_updated) already uses _get_end() —
confirmed correct. Backward compatible: all previous methods
unchanged.
v10.1.8: Buffer Distance Fix. The Tolerance value now correctly acts
as the hard containment boundary — only features whose geometry
intersects the tolerance buffer of the drawn path are aligned
(matching ArcGIS Pro behaviour). Previously the algorithm silently
expanded search_buffer to tolerance*2, pulling in features outside the
drawn buffer. Fixed: search_buffer clamp is now max(search_buffer,
tolerance) instead of tolerance*2. Dialog _get_features() bbox
pre-filter updated from tol*2 to tol to match.
v10.1.7: Coherent Fit to Path gap-closing fix. Densification +
master-path projection for Fit to Path so adjacent parcels share
identical boundary coordinates.
v10.1.1: QGIS 4 loading fixes. Declared qgisMaximumVersion=4.99 so the
plugin is allowed to load under QGIS 4 (a 3.x-only maximum silently
blocked it before). Fully scoped every Qt and QGIS enum that PyQt6 no
longer exposes in unscoped form (Qt.*, Qgis.MessageLevel.*,
QgsWkbTypes.GeometryType/Type.*, QFrame/QSizePolicy/QSlider widget
enums, QgsVertexMarker.IconType.*, QgsPointLocator.Type.*). QAction
import now falls back from QtWidgets to QtGui (moved in Qt6). Enums
relocated to the Qgis namespace in QGIS 4 (layer filters,
feature-request flags, tolerance unit) are resolved defensively at
import time with QGIS 3 fallbacks. All v10 master-path snapping logic
and the v10.1 buffer/curve shims are unchanged.
v10.1.0: QGIS 4 compatibility groundwork. Buffer style resolution now
uses a module-level _resolve_buffer_styles() helper that probes five
API strategies (Qgis.EndCapStyle, QgsGeometry.CapRound,
QgsBufferParameters, integer fallback) at import time. _make_buffer()
tries four QgsGeometry.buffer() call signatures.
QgsWkbTypes.isCurvedType wrapped in _is_curved_wkb_type() shim.
QgsMessageLog guarded for headless environments.
QgsWkbTypes.displayString guarded for QGIS 4. All v10 master-path
snapping logic unchanged.
v10.0.0: Global Master Boundary Alignment. Deterministic master-path
snap forces all near-path vertices to the exact same coordinates
across all polygons — bitwise-identical shared boundary, zero gaps.
Two-tier: exact vertex pin at kinks (Tier 1) + segment projection
(Tier 2).
v9.2.0: Hardened shared-boundary alignment. Global merge via spatial
hash, deterministic trace direction, zero-length edge cleanup.
v9.0.0: Coherent Multi-Polygon Boundary Alignment. Enforce Shared
Boundary option (default ON).
v8.0.0: True path tracing. Trace Mode button. Arc/curve-aware
densification. Improved Chaikin smoothing.
v7.1.0: Trace & Smooth method with resample + snap + Chaikin
smoothing.
v7.0.0: 4-step dock UI, spatial index, 5-level undo, preview rubber
band.

yes

MustafaELghazaly

2026-06-12T10:00:58.832624+00:00

3.28.0

4.99.0

no

Version management

Plugin details