![]() |
VR-Forces 4.0.4 Class Documentation
|
00001 /******************************************************************************* 00002 ** Copyright (c) 2006 MAK Technologies, Inc. 00003 ** All rights reserved. 00004 *******************************************************************************/ 00005 /******************************************************************************* 00006 ** $RCSfile: aggregateSpatialData.h,v $ $Revision: 1.3 $ $State: Exp $ 00007 *******************************************************************************/ 00008 00011 00014 00015 #ifndef DtAggregateSpatialData_H_ 00016 #define DtAggregateSpatialData_H_ 00017 00018 #include "vrfobjcore/vrfobjcoreDefines.h" 00019 #include "vrfobjcore/aggregateData.h" 00020 #include "vrfutil/boundingGeom.h" 00021 #include <matrix/vlTaitBryan.h> 00022 #include <matrix/vlVector.h> 00023 #include <vlutil/vlSmartPointers.h> 00024 00025 class DtAggregateSpatialData; 00026 00027 typedef DtBoost::shared_ptr<DtAggregateSpatialData> DtAggregateSpatialDataPtr; 00028 typedef DtBoost::shared_ptr<const DtAggregateSpatialData> DtAggregateSpatialDataConstPtr; 00029 00033 class DT_DLL_vrfobjcore DtAggregateSpatialData : public DtAggregateData 00034 { 00035 public: 00036 00038 DtAggregateSpatialData(); 00039 00041 virtual ~DtAggregateSpatialData(); 00042 00044 DtAggregateSpatialData(const DtAggregateSpatialData& orig); 00045 00047 DtAggregateSpatialData& operator=(const DtAggregateSpatialData& orig); 00048 00051 virtual void setLocation(const DtVector& location); 00052 virtual const DtVector& location() const; 00054 00057 virtual void setBoundingGeometry(const DtSimBoundingGeometry& geometry); 00058 virtual const DtSimBoundingGeometry& boundingGeometry() const; 00060 00063 virtual void setOrientation(const DtDcm& orientation); 00064 virtual const DtDcm& orientation() const; 00066 00069 virtual void setVelocity(const DtVector& location); 00070 virtual const DtVector& velocity() const; 00072 00075 virtual void setHeading(double heading); 00076 virtual double heading() const; 00078 00080 virtual void print() const; 00081 00082 public: 00083 00085 static DtAggregateData* create(); 00086 00087 protected: 00088 00089 DtVector myLocation; 00090 DtSimBoundingGeometry myBoundingGeometry; 00091 DtDcm myOrientation; 00092 DtVector myVelocity; 00093 double myHeading; 00094 }; 00095 00096 #endif