CADability dotNET
The BoundingCube type exposes the following members.
Constructors
Name  Description  

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

Methods
Name  Description  

ClipLine 
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
 
Contains(BoundingCube) 
Returns true if this cube contains the provided cube. (<= will be checked)
 
Contains(GeoPoint) 
Returns true if this cube contains the provided point. (<= will be checked)
 
Contains(GeoPoint, Double) 
Returns true if this cube contains the provided point.
Points within the cube extended by precision
will also be accepted.
 
Disjoint 
Returns true if the two cubes are disjoint (do not overlap and do not touch)
 
Equals 
Determines whether the specified Object is equal to this instance.
(Overrides ValueType..::..Equals(Object).)  
Expand 
Expands the bounding cube by the given value in all directions.
 
GetCenter 
Returns the center of this BoundingCube
 
GetExtent 
Returns the extent of the projected BoundingCube
 
GetObjectData  
GetSides 
Returns 6 planar faces, the faces of this cube
 
GetSolid 
Returns a solid cube as a Solid.
 
Interferes(BoundingCube) 
Checks the interference of this cube with the other provided cube
 
Interferes(array<GeoPoint>[]()[][]) 
Checks the interference of this cube with the provided polyline. The array of points
defines a polyline connecting consecutive points.
 
Interferes(Plane) 
Returns true if the given plane intersects the this bounding cube. Returns false otherwise.
 
Interferes(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.
 
Interferes(GeoPoint%, GeoPoint%) 
Returns true if the given line segment intersects the this bounding cube. Returns false otherwise.
 
Interferes(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.
 
Interferes(Projection, BoundingRect) 
Returns true, if the provided rectangle rect and this BoundingCube interfere with the provided projection.
 
Interferes(GeoPoint%, GeoPoint%, GeoPoint%) 
Returns true when the triangle defined by tri1, tri2 and tri3
(including the inside of the triangle) and this BoundingCube interfere.
 
Interferes(GeoPoint, GeoPoint, GeoPoint, GeoPoint) 
Returns true if the provided tetraeder (given by the four points tetra1..tetra4) and this
BoundingCube interfere
 
Interferes(GeoPoint, GeoVector, GeoVector, GeoVector) 
Checks the interference of this cube with the provided parallelepiped (the affine projection of a cube)
 
Interferes(GeoPoint, GeoVector, Double, Boolean) 
Returns true if the given line intersects the this bounding cube. Returns false otherwise.
 
IsOnBounds 
Tests whether the provided point toTest falls on the bounds of this
cube with respect to precision.
 
MinMax(BoundingCube) 
Makes this BoundingCube include the provided BoundingCube. You can start with an EmptyBoundingCube  
MinMax(GeoPoint) 
Makes this BoundingCube include the provided point. You can start with an EmptyBoundingCube  
Modify 
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.
 
ToString 
Returns a String that represents this instance.
(Overrides ValueType..::..ToString()()()().) 
Fields
Name  Description  

UnitBoundingCube 
BoundingCube defining the interval [0,1] in all directions
 
Xmax  
Xmin  
Ymax  
Ymin  
Zmax  
Zmin 
Properties
Name  Description  

EmptyBoundingCube 
Empty BoundingCube. Defined by the special values MinValue and MaxValue.
Often used with the MinMax(GeoPoint) or MinMax(BoundingCube) Methods.
 
InfiniteBoundingCube  
IsEmpty 
Returns true if this is the special empty cube
 
LineNumbers 
Gets an array[12,2] of pairs of point indizes defining the 12 edges
of this cube. Indizes are to the Points  
Lines 
Gets the 12 edges of the cube as a GeoPoint[12, 2] array
 
MaxSide 
Gets the length of the maximum side
 
Points 
Gets an array of the 8 vertices of this cube
 
Size 
Gets the sum of width, height and deepth
 
XDiff 
Gets the extension in x direction
 
YDiff 
Gets the extension in y direction
 
ZDiff 
Gets the extension in z direction
