OptionalexactOptionalexactDistance (m) at/below which a same-shape pair is treated as an EXACT
duplicate (severity major) rather than a candidate overlap (minor).
Default 1 mm.
OptionalexclusionsPairs whose element keys are in here are skipped (voids/hosts/assemblies).
OptionaliouSuperseded by positionTolerance. Minimum AABB
intersection-over-union for a pair to count as overlapping. IoU is a ratio,
so it imposed no fixed physical tolerance: for two equal boxes offset by d
along an axis of extent e the IoU is (e − d) / (e + d), and the default
0.9 therefore allowed d ≤ e / 19 — 5 mm across a DN100 pipe but 421 mm
across an 8 m slab, from one setting. Passing this (or exactThreshold)
restores the pre-1.7 IoU matching gate — which pairs are reported, and
the old settings.tolerance reading — rather than silently reinterpreting
a number that means nothing in the new metric. It does NOT restore the
whole pre-1.7 behaviour: severity is still decided by the area+volume
shape signature (not the old triangle count), and self-pair identity is
still (model, ref) (not key-based), so a file with duplicated GlobalIds
reports pairs the old code hid.
OptionalpositionHow far apart (m) two elements may be and still count as the same object.
This is the primary control and the number reported in
ClashResult.settings.tolerance. It bounds boxDistance: for two
equally-sized boxes that is exactly the distance between their centres, and
a difference in size adds to it. Default 10 mm.
It is an upper bound, not the whole gate. boxesTouch is applied
first, and two copies stop touching once the offset exceeds the element's
own extent on the offset axis, so the EFFECTIVE tolerance per axis is
min(positionTolerance, extent on that axis). A 200 mm wall gets the full
10 mm on all three axes; a 2 mm plate gets 10 mm in its plane and 2 mm
along its normal. That is deliberate — see boxesTouch for why
clear air between two surfaces makes them two objects — and it is pinned by
the "effective tolerance is min(positionTolerance, extent) per axis" test.
Deprecated
Only meaningful in the legacy IoU mode selected by iouThreshold; use exactTolerance.