![]() |
VR-Forces 4.0.4 Class Documentation
|
00001 /****************************************************************************** 00002 ** Copyright (c) 2006 MaK Technologies, Inc. 00003 ** All rights reserved. 00004 ******************************************************************************/ 00005 /****************************************************************************** 00006 ** $RCSfile: DtEllipsoidObject.h,v $ $Revision: 1.3 $ $State: Exp $ 00007 ******************************************************************************/ 00008 #pragma once 00009 00013 00014 #include <vrvDrawControl/DtEllipsoidCuboidBase.h> 00015 00016 #include <vl/envEllipsoid.h> 00017 00018 namespace vrvControlToolkit 00019 { 00020 00028 class DT_DLL_VRVDRAWCONTROL DtEllipsoidObject : public DtEllipsoidCuboidBase 00029 { 00030 public: 00051 DtEllipsoidObject(DtExerciseConn* exConn, unsigned id, const DtVdc3DAttachPoint& attachment, 00052 const DtVector& diameters, const DtVector& enuOffset = DtVector::zero(), 00053 const DtTaitBryan& rotation = zeros, 00054 DtVdcColor color = DtVdcColor::DtVdcWhite, bool flashing = false); 00055 00056 // \brief Virtual destructor 00057 virtual ~DtEllipsoidObject(); 00058 00059 00065 virtual const DtVector& diameters() const; 00066 00072 virtual void setDiameters(const DtVector& diameters); 00073 00074 virtual void setAttachment(const DtVdc3DAttachPoint& attachment); 00075 virtual void setRotation(const DtTaitBryan& rotation); 00076 00077 virtual void update(); 00078 00079 protected: 00080 DtEnvironmentalEllipsoidRecord myEllipsoidRecord; 00081 00082 00083 private: 00088 DtEllipsoidObject(); 00089 00093 DtEllipsoidObject(const DtEllipsoidObject& orig); 00094 00098 DtEllipsoidObject& operator=(const DtEllipsoidObject& rhs); 00099 00100 void initEllipsoidRecords(); 00101 00102 private: 00103 // Initializer for DtTaitBryan 00104 static DtTaitBryan zeros; 00105 00106 }; 00107 00108 }