![]() |
VR-Forces 4.0.4 Class Documentation
|
00001 /****************************************************************************** 00002 ** Copyright (c) 2006 MaK Technologies, Inc. 00003 ** All rights reserved. 00004 ******************************************************************************/ 00005 /****************************************************************************** 00006 ** $RCSfile: DtCuboidObject.h,v $ $Revision: 1.5 $ $State: Exp $ 00007 ******************************************************************************/ 00008 #pragma once 00009 00013 00014 #include <vlutil/vlString.h> 00015 00016 #include <vrvDrawControl/vrvDrawControlDefines.h> 00017 00018 #include <vrvDrawControl/DtEllipsoidCuboidBase.h> 00019 00020 #include <vl/envRectVol.h> 00021 00022 namespace vrvControlToolkit 00023 { 00030 class DT_DLL_VRVDRAWCONTROL DtCuboidObject : public DtEllipsoidCuboidBase 00031 { 00032 public: 00057 DtCuboidObject(DtExerciseConn* exConn, unsigned id, const DtVdc3DAttachPoint& attachment, 00058 double length, double width, double height, 00059 const DtVector& enuOffset = DtVector::zero(), 00060 const DtTaitBryan& rotation = zeros, 00061 DtVdcColor color = DtVdcColor::DtVdcWhite, bool flashing = false); 00062 00063 // \brief Virtual destructor 00064 virtual ~DtCuboidObject(); 00065 00071 virtual double length() const; 00072 00078 virtual void setLength(double length); 00079 00085 virtual double width() const; 00086 00092 virtual void setWidth(double width); 00093 00099 virtual double height() const; 00100 00106 virtual void setHeight(double height); 00107 00108 virtual void setAttachment(const DtVdc3DAttachPoint& attachment); 00109 virtual void setRotation(const DtTaitBryan& rotation); 00110 00111 virtual void update(); 00112 00113 private: 00118 DtCuboidObject(); 00119 00123 DtCuboidObject(const DtCuboidObject& orig); 00124 00128 DtCuboidObject& operator=(const DtCuboidObject& rhs); 00129 00130 void initCuboidRecords(); 00131 00132 protected: 00133 DtEnvironmentalRectangularVolumeRecord myCuboidRecord; 00134 00135 private: 00136 // Initializer for DtTaitBryan 00137 static DtTaitBryan zeros; 00138 00139 }; 00140 }