Table of Contents

Method TryCutOpenings

Namespace
GeometryHelper.Geometry
Assembly
GeometryHelper.dll

TryCutOpenings(out GeoSolid3)

Cuts every opening into this body, giving one without openings whose faces are the surface of its material.

public bool TryCutOpenings(out GeoSolid3 material)

Parameters

material GeoSolid3

Returns

bool

TryCutOpenings(out GeoSolid3, Tolerance)

Cuts every opening into this body, giving one without openings whose faces are the surface of its material, within a tolerance.

public bool TryCutOpenings(out GeoSolid3 material, Tolerance tolerance)

Parameters

material GeoSolid3

The body with its openings cut in, or this body when it has none; null when the method returns false.

tolerance Tolerance

The tolerance.

Returns

bool

true when some material is left; false when the openings take all of it.

Remarks

Every question this library asks of a body takes its openings into account already. Cutting them in is for a body that will be asked many questions: the queries that need it do the cutting each time, and a caller checking one plate against a hundred bolts is better off cutting the plate once and asking the result — the same bargain as BuildIndex(), and for the same reason: the body is a value, so it keeps no cache of its own.

The answer holds the same material, so its Volume is what GetNetVolume() measures — not the cheaper NetVolume, which takes every opening off whole and so overcounts one drawn poking out past a face, as a through-hole usually is.