Class Clash3
- Namespace
- GeometryHelper.Clash
- Assembly
- GeometryHelper.dll
Checking many parts against each other at once: which run into each other, which touch, and which come nearer than a clearance.
public static class Clash3
- Inheritance
-
Clash3
- Inherited Members
Remarks
The check asks, of every pair, the questions a clash report is made of, cheapest first. Every part is prepared once — its openings cut, its surface indexed — and the boxes are swept along one axis so that only pairs whose boxes come within the clearance of each other are looked at, which in a model is a small share of all the pairs. Those are checked in parallel: the surfaces through their indexes, then, for a pair that touches, the volume the two share, one body per region, and where there is none, the patches where they lie against each other.
Openings are honoured throughout: a bolt through its hole is no clash. The results come back in the order of the pairs' indexes, whatever order the threads finished in. A pair whose check throws is reported as Unresolved, with the error, and logged, so that one part the library cannot read does not cost the report for the rest of the model.
Reinforcement can be checked without building its bodies: a ClashBar is a centre line and a radius, and a bar runs into a part where the part comes nearer its centre line than the radius. The two ways stand side by side; see Find(IReadOnlyList<ClashBar>, IReadOnlyList<GeoPreparedSolid3>, ClashOptions, Tolerance).
Methods
- Find(IReadOnlyList<ClashBar>, IReadOnlyList<GeoSolid3>)
Checks every bar against every part, reading the bars by their centre lines, using the default options and tolerance.
- Find(IReadOnlyList<ClashBar>, IReadOnlyList<GeoSolid3>, ClashOptions)
Checks every bar against every part, reading the bars by their centre lines, using the default tolerance.
- Find(IReadOnlyList<ClashBar>, IReadOnlyList<GeoSolid3>, ClashOptions, Tolerance)
Checks every bar against every part, reading the bars by their centre lines, within a tolerance.
- Find(IReadOnlyList<ClashBar>, IReadOnlyList<GeoPreparedSolid3>)
Checks every bar against every prepared part, reading the bars by their centre lines, using the default options and tolerance.
- Find(IReadOnlyList<ClashBar>, IReadOnlyList<GeoPreparedSolid3>, ClashOptions)
Checks every bar against every prepared part, reading the bars by their centre lines, using the default tolerance.
- Find(IReadOnlyList<ClashBar>, IReadOnlyList<GeoPreparedSolid3>, ClashOptions, Tolerance)
Checks every bar against every prepared part, reading the bars by their centre lines, within a tolerance.
- Find(IReadOnlyList<GeoSolid3>)
Checks every part of a set against every other, using the default options and tolerance.
- Find(IReadOnlyList<GeoSolid3>, ClashOptions)
Checks every part of a set against every other, using the default tolerance.
- Find(IReadOnlyList<GeoSolid3>, ClashOptions, Tolerance)
Checks every part of a set against every other, within a tolerance.
- Find(IReadOnlyList<GeoSolid3>, IReadOnlyList<GeoSolid3>)
Checks every part of one set against every part of another, using the default options and tolerance.
- Find(IReadOnlyList<GeoSolid3>, IReadOnlyList<GeoSolid3>, ClashOptions)
Checks every part of one set against every part of another, using the default tolerance.
- Find(IReadOnlyList<GeoSolid3>, IReadOnlyList<GeoSolid3>, ClashOptions, Tolerance)
Checks every part of one set against every part of another, within a tolerance.
- Find(IReadOnlyList<GeoPreparedSolid3>)
Checks every prepared part of a set against every other, using the default options and tolerance.
- Find(IReadOnlyList<GeoPreparedSolid3>, ClashOptions)
Checks every prepared part of a set against every other, using the default tolerance.
- Find(IReadOnlyList<GeoPreparedSolid3>, ClashOptions, Tolerance)
Checks every prepared part of a set against every other, within a tolerance.
- Find(IReadOnlyList<GeoPreparedSolid3>, IReadOnlyList<GeoPreparedSolid3>)
Checks every prepared part of one set against every prepared part of another, using the default options and tolerance.
- Find(IReadOnlyList<GeoPreparedSolid3>, IReadOnlyList<GeoPreparedSolid3>, ClashOptions)
Checks every prepared part of one set against every prepared part of another, using the default tolerance.
- Find(IReadOnlyList<GeoPreparedSolid3>, IReadOnlyList<GeoPreparedSolid3>, ClashOptions, Tolerance)
Checks every prepared part of one set against every prepared part of another, within a tolerance.