Method Find
- Namespace
- GeometryHelper.Clash
- Assembly
- GeometryHelper.dll
Find(IReadOnlyList<GeoSolid3>)
Checks every part of a set against every other, using the default options and tolerance.
public static ClashResult[] Find(IReadOnlyList<GeoSolid3> parts)
Parameters
partsIReadOnlyList<GeoSolid3>
Returns
Find(IReadOnlyList<GeoSolid3>, ClashOptions)
Checks every part of a set against every other, using the default tolerance.
public static ClashResult[] Find(IReadOnlyList<GeoSolid3> parts, ClashOptions options)
Parameters
partsIReadOnlyList<GeoSolid3>optionsClashOptions
Returns
Find(IReadOnlyList<GeoSolid3>, ClashOptions, Tolerance)
Checks every part of a set against every other, within a tolerance.
public static ClashResult[] Find(IReadOnlyList<GeoSolid3> parts, ClashOptions options, Tolerance tolerance)
Parameters
partsIReadOnlyList<GeoSolid3>The parts.
optionsClashOptionsWhat to look for, and how many threads to use.
toleranceToleranceThe tolerance.
Returns
- ClashResult[]
One result per pair that clashes, in the order of their indexes; First is the lower.
Exceptions
- ArgumentNullException
Thrown when the parts, one of them, or the options are null.
Find(IReadOnlyList<GeoPreparedSolid3>)
Checks every prepared part of a set against every other, using the default options and tolerance.
public static ClashResult[] Find(IReadOnlyList<GeoPreparedSolid3> parts)
Parameters
partsIReadOnlyList<GeoPreparedSolid3>
Returns
Find(IReadOnlyList<GeoPreparedSolid3>, ClashOptions)
Checks every prepared part of a set against every other, using the default tolerance.
public static ClashResult[] Find(IReadOnlyList<GeoPreparedSolid3> parts, ClashOptions options)
Parameters
partsIReadOnlyList<GeoPreparedSolid3>optionsClashOptions
Returns
Find(IReadOnlyList<GeoPreparedSolid3>, ClashOptions, Tolerance)
Checks every prepared part of a set against every other, within a tolerance.
public static ClashResult[] Find(IReadOnlyList<GeoPreparedSolid3> parts, ClashOptions options, Tolerance tolerance)
Parameters
partsIReadOnlyList<GeoPreparedSolid3>The parts, already prepared: a model checked more than once is prepared once.
optionsClashOptionsWhat to look for, and how many threads to use.
toleranceToleranceThe tolerance.
Returns
- ClashResult[]
One result per pair that clashes, in the order of their indexes; First is the lower.
Exceptions
- ArgumentNullException
Thrown when the parts, one of them, or the options are null.
Find(IReadOnlyList<GeoSolid3>, IReadOnlyList<GeoSolid3>)
Checks every part of one set against every part of another, using the default options and tolerance.
public static ClashResult[] Find(IReadOnlyList<GeoSolid3> first, IReadOnlyList<GeoSolid3> second)
Parameters
firstIReadOnlyList<GeoSolid3>secondIReadOnlyList<GeoSolid3>
Returns
Find(IReadOnlyList<GeoSolid3>, IReadOnlyList<GeoSolid3>, ClashOptions)
Checks every part of one set against every part of another, using the default tolerance.
public static ClashResult[] Find(IReadOnlyList<GeoSolid3> first, IReadOnlyList<GeoSolid3> second, ClashOptions options)
Parameters
firstIReadOnlyList<GeoSolid3>secondIReadOnlyList<GeoSolid3>optionsClashOptions
Returns
Find(IReadOnlyList<GeoSolid3>, IReadOnlyList<GeoSolid3>, ClashOptions, Tolerance)
Checks every part of one set against every part of another, within a tolerance.
public static ClashResult[] Find(IReadOnlyList<GeoSolid3> first, IReadOnlyList<GeoSolid3> second, ClashOptions options, Tolerance tolerance)
Parameters
firstIReadOnlyList<GeoSolid3>The first set, such as the reinforcement.
secondIReadOnlyList<GeoSolid3>The second set, such as the embeds; a part is never checked against its own set.
optionsClashOptionsWhat to look for, and how many threads to use.
toleranceToleranceThe tolerance.
Returns
- ClashResult[]
One result per pair that clashes, in the order of their indexes, First indexing the first set and Second the second.
Exceptions
- ArgumentNullException
Thrown when either set, a part of it, or the options are null.
Find(IReadOnlyList<GeoPreparedSolid3>, IReadOnlyList<GeoPreparedSolid3>)
Checks every prepared part of one set against every prepared part of another, using the default options and tolerance.
public static ClashResult[] Find(IReadOnlyList<GeoPreparedSolid3> first, IReadOnlyList<GeoPreparedSolid3> second)
Parameters
firstIReadOnlyList<GeoPreparedSolid3>secondIReadOnlyList<GeoPreparedSolid3>
Returns
Find(IReadOnlyList<GeoPreparedSolid3>, IReadOnlyList<GeoPreparedSolid3>, ClashOptions)
Checks every prepared part of one set against every prepared part of another, using the default tolerance.
public static ClashResult[] Find(IReadOnlyList<GeoPreparedSolid3> first, IReadOnlyList<GeoPreparedSolid3> second, ClashOptions options)
Parameters
firstIReadOnlyList<GeoPreparedSolid3>secondIReadOnlyList<GeoPreparedSolid3>optionsClashOptions
Returns
Find(IReadOnlyList<GeoPreparedSolid3>, IReadOnlyList<GeoPreparedSolid3>, ClashOptions, Tolerance)
Checks every prepared part of one set against every prepared part of another, within a tolerance.
public static ClashResult[] Find(IReadOnlyList<GeoPreparedSolid3> first, IReadOnlyList<GeoPreparedSolid3> second, ClashOptions options, Tolerance tolerance)
Parameters
firstIReadOnlyList<GeoPreparedSolid3>The first set.
secondIReadOnlyList<GeoPreparedSolid3>The second set; a part is never checked against its own set.
optionsClashOptionsWhat to look for, and how many threads to use.
toleranceToleranceThe tolerance.
Returns
- ClashResult[]
One result per pair that clashes, in the order of their indexes, First indexing the first set and Second the second.
Exceptions
- ArgumentNullException
Thrown when either set, a part of it, or the options are null.
Find(IReadOnlyList<ClashBar>, IReadOnlyList<GeoSolid3>)
Checks every bar against every part, reading the bars by their centre lines, using the default options and tolerance.
public static ClashResult[] Find(IReadOnlyList<ClashBar> bars, IReadOnlyList<GeoSolid3> parts)
Parameters
barsIReadOnlyList<ClashBar>partsIReadOnlyList<GeoSolid3>
Returns
Find(IReadOnlyList<ClashBar>, IReadOnlyList<GeoSolid3>, ClashOptions)
Checks every bar against every part, reading the bars by their centre lines, using the default tolerance.
public static ClashResult[] Find(IReadOnlyList<ClashBar> bars, IReadOnlyList<GeoSolid3> parts, ClashOptions options)
Parameters
barsIReadOnlyList<ClashBar>partsIReadOnlyList<GeoSolid3>optionsClashOptions
Returns
Find(IReadOnlyList<ClashBar>, IReadOnlyList<GeoSolid3>, ClashOptions, Tolerance)
Checks every bar against every part, reading the bars by their centre lines, within a tolerance.
public static ClashResult[] Find(IReadOnlyList<ClashBar> bars, IReadOnlyList<GeoSolid3> parts, ClashOptions options, Tolerance tolerance)
Parameters
barsIReadOnlyList<ClashBar>The bars.
partsIReadOnlyList<GeoSolid3>The parts, such as the steel the bars pass.
optionsClashOptionsWhat to look for, and how many threads to use.
toleranceToleranceThe tolerance.
Returns
- ClashResult[]
One result per pair that clashes, in the order of their indexes, First indexing the bars and Second the parts.
Exceptions
- ArgumentNullException
Thrown when the bars, the parts, one of either, or the options are null.
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.
public static ClashResult[] Find(IReadOnlyList<ClashBar> bars, IReadOnlyList<GeoPreparedSolid3> parts)
Parameters
barsIReadOnlyList<ClashBar>partsIReadOnlyList<GeoPreparedSolid3>
Returns
Find(IReadOnlyList<ClashBar>, IReadOnlyList<GeoPreparedSolid3>, ClashOptions)
Checks every bar against every prepared part, reading the bars by their centre lines, using the default tolerance.
public static ClashResult[] Find(IReadOnlyList<ClashBar> bars, IReadOnlyList<GeoPreparedSolid3> parts, ClashOptions options)
Parameters
barsIReadOnlyList<ClashBar>partsIReadOnlyList<GeoPreparedSolid3>optionsClashOptions
Returns
Find(IReadOnlyList<ClashBar>, IReadOnlyList<GeoPreparedSolid3>, ClashOptions, Tolerance)
Checks every bar against every prepared part, reading the bars by their centre lines, within a tolerance.
public static ClashResult[] Find(IReadOnlyList<ClashBar> bars, IReadOnlyList<GeoPreparedSolid3> parts, ClashOptions options, Tolerance tolerance)
Parameters
barsIReadOnlyList<ClashBar>The bars.
partsIReadOnlyList<GeoPreparedSolid3>The parts, already prepared: the same parts can be checked against bodies and against bars.
optionsClashOptionsWhat to look for, and how many threads to use.
toleranceToleranceThe tolerance.
Returns
- ClashResult[]
One result per pair that clashes, in the order of their indexes, First indexing the bars and Second the parts.
Remarks
A bar runs into a part where its centre line runs inside the part, or comes nearer the part's surface than the radius; it touches where it comes exactly the radius away, and comes too near where it comes within the clearance of that. Openings are honoured, as for bodies: a bar through a hole it clears is no clash.
What a clash between bodies measures as a volume, a bar measures as a depth and a length: how far the part reaches into the bar (Depth) and how much of the centre line runs inside it (LengthInside). No body is built, so Overlaps is empty and Volume nought, and MinimumVolume does not apply; MinimumDepth does. The gap of a bar too near a part runs from the bar's surface.
The ends are read rounded (see ClashBar), so right at an end a part up to a radius beyond it is found to clash.
Exceptions
- ArgumentNullException
Thrown when the bars, the parts, one of either, or the options are null.