CADability dotNET

The BoundingCube type exposes the following members.

Constructors

  NameDescription
Public methodBoundingCube(array<GeoPoint>[]()[][])
Constructs a BoundingCube, that encloses all given points
Public methodBoundingCube(SerializationInfo, StreamingContext)
Constructor required by deserialization
Public methodBoundingCube(GeoPoint, Double)
Constructs a equal sided BoundingCube from a center point and a "radius" (half width)
Public methodBoundingCube(Double, Double, Double, Double, Double, Double)
Constructs a BoundingCube from minimum and maximum values

Methods

  NameDescription
Public methodClipLine
Clips the provided line (defined by start and end) by this cube. Returns true if the line interferes with this boundingcube, modifies the start and endpoint in the parameters if clipping occures
Public methodContains(BoundingCube)
Returns true if this cube contains the provided cube. (<= will be checked)
Public methodContains(GeoPoint)
Returns true if this cube contains the provided point. (<= will be checked)
Public methodContains(GeoPoint, Double)
Returns true if this cube contains the provided point. Points within the cube extended by precision will also be accepted.
Public methodStatic memberDisjoint
Returns true if the two cubes are disjoint (do not overlap and do not touch)
Public methodEquals
Determines whether the specified Object is equal to this instance.
(Overrides ValueType..::..Equals(Object).)
Public methodExpand
Expands the bounding cube by the given value in all directions.
Public methodGetCenter
Returns the center of this BoundingCube
Public methodGetExtent
Returns the extent of the projected BoundingCube
Public methodGetObjectData
Public methodGetSides
Returns 6 planar faces, the faces of this cube
Public methodGetSolid
Returns a solid cube as a Solid.
Public methodInterferes(BoundingCube)
Checks the interference of this cube with the other provided cube
Public methodInterferes(array<GeoPoint>[]()[][])
Checks the interference of this cube with the provided polyline. The array of points defines a polyline connecting consecutive points.
Public methodInterferes(Plane)
Returns true if the given plane intersects the this bounding cube. Returns false otherwise.
Public methodInterferes(Projection..::..PickArea)
Checks the interference of this cube with the provided area. The pickarea is either a rectangular prism of infinite length or a frustum.
Public methodInterferes(GeoPoint%, GeoPoint%)
Returns true if the given line segment intersects the this bounding cube. Returns false otherwise.
Public methodInterferes(array<GeoPoint>[]()[][], array<Int32>[]()[][])
Checks the interference of this cube with the provided triangles. The triangles are defined by three points each. Each triple of indices in triangleIndex defines one triangle. Not only the edges of the triangle are checked but also the inner surface.
Public methodInterferes(Projection, BoundingRect)
Returns true, if the provided rectangle rect and this BoundingCube interfere with the provided projection.
Public methodInterferes(GeoPoint%, GeoPoint%, GeoPoint%)
Returns true when the triangle defined by tri1, tri2 and tri3 (including the inside of the triangle) and this BoundingCube interfere.
Public methodInterferes(GeoPoint, GeoPoint, GeoPoint, GeoPoint)
Returns true if the provided tetraeder (given by the four points tetra1..tetra4) and this BoundingCube interfere
Public methodInterferes(GeoPoint, GeoVector, GeoVector, GeoVector)
Checks the interference of this cube with the provided parallelepiped (the affine projection of a cube)
Public methodInterferes(GeoPoint, GeoVector, Double, Boolean)
Returns true if the given line intersects the this bounding cube. Returns false otherwise.
Public methodIsOnBounds
Tests whether the provided point toTest falls on the bounds of this cube with respect to precision.
Public methodMinMax(BoundingCube)
Makes this BoundingCube include the provided BoundingCube. You can start with an EmptyBoundingCube
Public methodMinMax(GeoPoint)
Makes this BoundingCube include the provided point. You can start with an EmptyBoundingCube
Public methodModify
Modifies this cube according to the provided modification. If this modification contains a rotation the resulting cube will contain the rotated original cube. BoundingCubes are always axis aligned.
Public methodToString
Returns a String that represents this instance.
(Overrides ValueType..::..ToString()()()().)

Fields

  NameDescription
Public fieldStatic memberUnitBoundingCube
BoundingCube defining the interval [0,1] in all directions
Public fieldXmax
Public fieldXmin
Public fieldYmax
Public fieldYmin
Public fieldZmax
Public fieldZmin

Properties

  NameDescription
Public propertyStatic memberEmptyBoundingCube
Empty BoundingCube. Defined by the special values MinValue and MaxValue. Often used with the MinMax(GeoPoint) or MinMax(BoundingCube) Methods.
Public propertyStatic memberInfiniteBoundingCube
Infinite BoundingCube. Ranging from MinValue to MaxValue.
Public propertyIsEmpty
Returns true if this is the special empty cube
Public propertyLineNumbers
Gets an array[12,2] of pairs of point indizes defining the 12 edges of this cube. Indizes are to the Points
Public propertyLines
Gets the 12 edges of the cube as a GeoPoint[12, 2] array
Public propertyMaxSide
Gets the length of the maximum side
Public propertyPoints
Gets an array of the 8 vertices of this cube
Public propertySize
Gets the sum of width, height and deepth
Public propertyXDiff
Gets the extension in x direction
Public propertyYDiff
Gets the extension in y direction
Public propertyZDiff
Gets the extension in z direction

See Also