7 #ifndef _3dBoundingVolume_H
8 #define _3dBoundingVolume_H
17 #ifdef DtUSE_UTILITIES_NAMESPACE
18 namespace DtUSE_UTILITIES_NAMESPACE
81 double lengthOffset,
double widthOffset,
double heightOffset );
95 virtual void setToDefault();
102 virtual double length()
const {
return 2*myHalfDimensions[0]; }
103 virtual double width()
const {
return 2*myHalfDimensions[1]; }
104 virtual double height()
const {
return 2*myHalfDimensions[2]; }
106 virtual double halfLength()
const {
return myHalfDimensions[0]; }
107 virtual double halfWidth()
const {
return myHalfDimensions[1]; }
108 virtual double halfHeight()
const {
return myHalfDimensions[2]; }
113 virtual void setHalfLengthWidthHeight(
double halfLength,
double halfWidth,
115 virtual void setHalfLength(
double newHalfLength );
118 virtual void stretchForward(
double x,
double y );
145 virtual void stretchBackward(
double x,
double y );
154 virtual void setLatticeOffset(
const DtVector & newOffset );
155 virtual void setLatticeOffset(
double lengthOffset,
double widthOffset,
156 double heightOffset );
157 virtual void clearLatticeOffset();
159 virtual bool isOffset()
const {
return myIsOffset; }
179 #ifdef DtUSE_UTILITIES_NAMESPACE
bool myIsOffset
Definition: 3dBoundingVolume.h:173
const bool operator==(const DtU128 &lhs, const DtU128 &rhs)
DtVector myHalfDimensions
Definition: 3dBoundingVolume.h:166
virtual double length() const
Definition: 3dBoundingVolume.h:102
virtual double height() const
Definition: 3dBoundingVolume.h:104
A 3d bounding volume.
Definition: 3dBoundingVolume.h:67
virtual double halfLength() const
Definition: 3dBoundingVolume.h:106
virtual double halfWidth() const
Definition: 3dBoundingVolume.h:107
This file declares DtVector and DtVector32.
Definition: vlVector.h:224
virtual bool isOffset() const
Definition: 3dBoundingVolume.h:159
double myBoundingRadius
Definition: 3dBoundingVolume.h:175
#define DT_DLL_MATRIX
Definition: vlMachineTypes.h:107
virtual double offsetLength() const
Definition: 3dBoundingVolume.h:160
virtual double halfHeight() const
Definition: 3dBoundingVolume.h:108
double myOffsetLength
true if offset is non-zero.
Definition: 3dBoundingVolume.h:174
const bool operator!=(const DtU128 &lhs, const DtU128 &rhs)
virtual double boundingRadius() const
The radius is calculated from other data, and is always valid.
Definition: 3dBoundingVolume.h:111
DtVector myLatticeOffset
Diagonal of associated matrix.
Definition: 3dBoundingVolume.h:167
virtual double width() const
Definition: 3dBoundingVolume.h:103
virtual const DtVector & latticeOffset() const
Definition: 3dBoundingVolume.h:158
This file contains typedefs for machine dependant types.