VR-Forces 4.0.4 Class Documentation
include/vrvCigi/DtCigiBaseEntity.h
Go to the documentation of this file.
00001 /*********************************************************************
00002 ** Copyright (c) 2012 MaK Technologies, Inc.
00003 ** All rights reserved.
00004 *********************************************************************/
00005 
00006 
00010 
00011 #pragma once
00012 
00013 #include <vrvCigi/vrvCigi.h>
00014 
00015 #include <vrvCore/DtUniqueID.h>
00016 
00017 #include <matrix/geodCoord.h>
00018 #include <matrix/vlTaitBryan.h>
00019 
00020 namespace makVrv
00021 {
00022    class DtAgentManagerInterface;
00023    class DtCigiConnection;
00024    class DtModelAgent;
00025    class DtSceneObjectAgent;
00026    class DtDeadReckonUpdaterAgent;
00027    class DtAttachableDeadReckonUpdaterAgent;
00028    class DtDeadReckonGroundClampUpdaterAgent;
00029 
00034    class DT_DLL_VRVCIGI DtCigiBaseEntity
00035    {
00036    public:
00039       DtCigiBaseEntity(DtCigiConnection& connection,
00040          DtAgentManagerInterface& sceneInterface, int entityId,
00041          int entityType);
00042 
00044       virtual ~DtCigiBaseEntity();
00045 
00047       virtual DtUniqueID uniqueId() const;
00048 
00050       virtual void setVisible(bool yesNo);
00051 
00053       virtual void setDeadReckoningOn(bool onOff);
00054 
00056       virtual void setPosition(const DtGeodeticCoord& pos);
00057 
00059       virtual void setOrientation(const DtTaitBryan& orientation);
00060 
00065       virtual void setLinearRate(const DtVector& rate, bool useWorldCoordinates = true);
00066 
00071       virtual void setAngularRate(const DtVector& rate, bool useWorldCoordinates = true);
00072 
00074       virtual void setRelativeTo(DtCigiBaseEntity* parent);
00075 
00077       virtual void setRelativePosition(const DtVector& pos);
00078 
00081       virtual void setRelativeOrientation(const DtTaitBryan& orient);
00082 
00084       virtual void setAlpha(int alpha);
00085 
00088       virtual int alpha() const;
00089 
00091       virtual void setInheritAlpha(bool inherit);
00092 
00094       virtual const DtGeodeticCoord& lastSetPosition() const;
00095 
00097       virtual const DtTaitBryan& lastSetOrientation() const;
00098 
00100       virtual void slot_alphaChanged(int alpha, DtUniqueID id);
00101 
00103       virtual void setGroundClampingOn(bool trueFalse);
00104 
00105    protected:
00106       void createDeadReckonGroundClampUpdater();
00107 
00108    protected:
00109       DtSceneObjectAgent* mySceneObject;
00110       DtModelAgent* myModel;
00111       DtAttachableDeadReckonUpdaterAgent* myAttachableUpdater;
00112       DtDeadReckonGroundClampUpdaterAgent* myDeadReckonGroundClampUpdater;
00113 
00114       bool myDeadReckoningOn;
00115       bool myGroundClampingOn;
00116 
00117       DtGeodeticCoord myLastPosition;
00118       DtVector myLastLocalPosition;
00119 
00120       DtTaitBryan myLastOrientation;
00121       DtTaitBryan myLastGeocentricOrientation;
00122 
00123       DtCigiConnection& myConnection;
00124       DtAgentManagerInterface& mySceneInterface;
00125 
00126       int myEntityId;
00127       int myEntityType;
00128 
00129       DtCigiBaseEntity* myParent;
00130       bool myInheritAlpha;
00131       int  myAlpha;
00132    };
00133 }
00134 

Document ID: Generated on Fri Jun 29 16:33:32 EDT 2012 from SVN revision 116588
Copyright © 2005-2012 VT MÄK Inc. All Rights Reserved (www.mak.com)