Class Description: DtSimBoundingGeometry describes on objects bounding volume or bounding area (or nothing at all, for true point objects!). If DtSimBoundingGeometryType is BoundingTypeVolume, then boundingVolume() returns a Dt3dBoundingVolume, which describes the objects bounding volume.
If DtSimBoundingGeometry is BoundingTypeArea, then only the first 2 rows and 2 columns of the DtDcm are used to define the area. The third row/ column is set to [0 0 1] to keep the Dcm a valid, orthonormal matrix. This can still be used to do bounding volume checks by setting the Z dimension as desired (for example, one could test to see if an airplane is flying over an area by supply a large Z vector (set element [2][2] to 100,000, e.g.) and then do a point in bounding volume test.
If DtSimBoundingGeometry is BoundingTypeUndefined, then no bounding information is contained (for example, a waypoint), but again, a user could supply values as desired to the Dcm to check intersections as desired.
The DtDcm supplied to either the constructor or setBoundingVolume() The radial-length (along body x), radial-width (along body y) and radial height (along body Z) centered about the object. The offset vector allows the bounding volume to be offset from the object position in X (down the body nose) Y (to the right) and Z (down).
For example, the following approximates the bounding volume of an M1 tank, whose position is indicated at the center-base of the vehicle. Note the Z offset to compensate for the difference in origin.
DtDcm Volume:
| 4.00 0.00 0.00 |
| 0.00 1.80 0.00 |
|
| 0.00 0.00 1.44 |
DtVector Offset: [0.00 0.00 -1.44]
This indicates that the entity is 8 meters long, 3.6 meters wide, and 2.88 meters high.