Table of Contents

Class Boolean3

Namespace
GeometryHelper.Core
Assembly
GeometryHelper.dll

Where two bodies lie against each other, face to face.

public static class Boolean3
Inheritance
Boolean3
Inherited Members

Remarks

Two bodies that only touch share no volume, so TryIntersect(GeoSolid3, GeoSolid3, out GeoSolid3, Tolerance) says false and CollidesWith(GeoSolid3, GeoSolid3, Tolerance) says true, and neither says where. A column standing on a footing, a plate bolted to a flange: what bears on what is the patch where the two surfaces lie against each other.

Two faces are in contact where they lie in one plane and face opposite ways — back to back, one body on each side. Two faces flush and facing the same way are side by side, not in contact. The patch is the area the two faces share, which the plane library works out exactly through the coplanar lift, and the patches in one plane are joined, so a contact drawn across several faces comes back as the one region it is.

Both bodies are read as their material first, so a column standing over a bolt hole in a base plate does not report the hole as bearing. Only contact with area is a face: two bodies meeting along an edge or at a point have no patch, and the return type says so rather than inventing a face of no area.

Methods

Intersect(GeoFace3, GeoFace3)

Keeps what two shapes lying in one plane both cover.

Intersect(GeoFace3, GeoFace3, Tolerance)

Keeps what two shapes lying in one plane both cover, within a tolerance.

Intersect(GeoFace3, GeoPolygon3)

Keeps what two shapes lying in one plane both cover.

Intersect(GeoFace3, GeoPolygon3, Tolerance)

Keeps what two shapes lying in one plane both cover, within a tolerance.

Intersect(GeoPolygon3, GeoFace3)

Keeps what two shapes lying in one plane both cover.

Intersect(GeoPolygon3, GeoFace3, Tolerance)

Keeps what two shapes lying in one plane both cover, within a tolerance.

Intersect(GeoPolygon3, GeoPolygon3)

Keeps what two shapes lying in one plane both cover.

Intersect(GeoPolygon3, GeoPolygon3, Tolerance)

Keeps what two shapes lying in one plane both cover, within a tolerance.

Intersect(GeoSolid3, GeoSolid3)

Gets every separate region two bodies share, one body each.

Intersect(GeoSolid3, GeoSolid3, Tolerance)

Gets every separate region two bodies share, one body each, within a tolerance.

SplitShells(GeoSolid3)

Splits a body into the pieces of material that do not touch.

SplitShells(GeoSolid3, Tolerance)

Splits a body into the pieces of material that do not touch, within a tolerance.

Subtract(GeoFace3, GeoFace3)

Takes one shape out of another lying in the same plane.

Subtract(GeoFace3, GeoFace3, Tolerance)

Takes one shape out of another lying in the same plane, within a tolerance.

Subtract(GeoFace3, GeoPolygon3)

Takes one shape out of another lying in the same plane.

Subtract(GeoFace3, GeoPolygon3, Tolerance)

Takes one shape out of another lying in the same plane, within a tolerance.

Subtract(GeoPolygon3, GeoFace3)

Takes one shape out of another lying in the same plane.

Subtract(GeoPolygon3, GeoFace3, Tolerance)

Takes one shape out of another lying in the same plane, within a tolerance.

Subtract(GeoPolygon3, GeoPolygon3)

Takes one shape out of another lying in the same plane.

Subtract(GeoPolygon3, GeoPolygon3, Tolerance)

Takes one shape out of another lying in the same plane, within a tolerance.

TryCutOpenings(GeoSolid3, out GeoSolid3)

Turns a body with openings into one without, whose faces are the surface of its material.

TryCutOpenings(GeoSolid3, out GeoSolid3, Tolerance)

Turns a body with openings into one without, whose faces are the surface of its material, within a tolerance.

TryGetContact(GeoSolid3, GeoSolid3, out GeoFace3[])

Gets the patches where two bodies lie against each other, face to face.

TryGetContact(GeoSolid3, GeoSolid3, out GeoFace3[], Tolerance)

Gets the patches where two bodies lie against each other, face to face, within a tolerance.

TryIntersect(GeoSolid3, GeoSolid3, out GeoSolid3)

Gets the part two solids have in common, using the default tolerance.

TryIntersect(GeoSolid3, GeoSolid3, out GeoSolid3, Tolerance)

Gets the part two solids have in common, within a tolerance.

TrySubtract(GeoSolid3, GeoSolid3, out GeoSolid3)

Takes one solid out of another, using the default tolerance.

TrySubtract(GeoSolid3, GeoSolid3, out GeoSolid3, Tolerance)

Takes one solid out of another, within a tolerance.

TryUnion(GeoSolid3, GeoSolid3, out GeoSolid3)

Joins two solids into one, using the default tolerance.

TryUnion(GeoSolid3, GeoSolid3, out GeoSolid3, Tolerance)

Joins two solids into one, within a tolerance.

Union(GeoFace3, GeoFace3)

Joins two shapes lying in one plane.

Union(GeoFace3, GeoFace3, Tolerance)

Joins two shapes lying in one plane, within a tolerance.

Union(GeoFace3, GeoPolygon3)

Joins two shapes lying in one plane.

Union(GeoFace3, GeoPolygon3, Tolerance)

Joins two shapes lying in one plane, within a tolerance.

Union(GeoPolygon3, GeoFace3)

Joins two shapes lying in one plane.

Union(GeoPolygon3, GeoFace3, Tolerance)

Joins two shapes lying in one plane, within a tolerance.

Union(GeoPolygon3, GeoPolygon3)

Joins two shapes lying in one plane.

Union(GeoPolygon3, GeoPolygon3, Tolerance)

Joins two shapes lying in one plane, within a tolerance.

Xor(GeoFace3, GeoFace3)

Keeps what two shapes lying in one plane cover between them but do not share.

Xor(GeoFace3, GeoFace3, Tolerance)

Keeps what two shapes lying in one plane cover between them but do not share, within a tolerance.

Xor(GeoFace3, GeoPolygon3)

Keeps what two shapes lying in one plane cover between them but do not share.

Xor(GeoFace3, GeoPolygon3, Tolerance)

Keeps what two shapes lying in one plane cover between them but do not share, within a tolerance.

Xor(GeoPolygon3, GeoFace3)

Keeps what two shapes lying in one plane cover between them but do not share.

Xor(GeoPolygon3, GeoFace3, Tolerance)

Keeps what two shapes lying in one plane cover between them but do not share, within a tolerance.

Xor(GeoPolygon3, GeoPolygon3)

Keeps what two shapes lying in one plane cover between them but do not share.

Xor(GeoPolygon3, GeoPolygon3, Tolerance)

Keeps what two shapes lying in one plane cover between them but do not share, within a tolerance.