VR-Forces 4.0.4 Class Documentation
include/vrvCore/DtAttachableDeadReckonUpdater.h
Go to the documentation of this file.
00001 /****************************************************************************** 
00002 ** Copyright (c) 2009 MAK Technologies, Inc. 
00003 ** All rights reserved. 
00004 ******************************************************************************/ 
00005 /****************************************************************************** 
00006 ** $RCSfile: DtAttachableDeadReckonUpdater.h,v $ $Revision: 1.19 $ $State: Exp $ 
00007 ******************************************************************************/ 
00008  
00012  
00013 #ifndef DtAttachableDeadReckonUpdater_H_ 
00014 #define DtAttachableDeadReckonUpdater_H_ 
00015  
00016 #include <vrvCore/vrvCore.h>
00017 #include <vrvCore/DtDe.h>
00018 #include <vrvCore/DtUpdater.h>
00019 
00020 #include <string>
00021 
00022 class DtVector;
00023 class DtTaitBryan;
00024 
00025 namespace makVrv 
00026 { 
00027    class DtAttachableUpdater;
00028    class DtDeadReckonUpdater;
00029 
00034    class DT_DLL_VRVCORE DtAttachableDeadReckonUpdater : public DtUpdater
00035    { 
00036    public:
00037 
00039       DtAttachableDeadReckonUpdater(DtDe& de, DtUniqueID id, bool doNotAddToMgr = false );
00040 
00042       virtual ~DtAttachableDeadReckonUpdater();
00043       
00045       virtual void update( double simTime );
00046 
00050       virtual void deadReckonAndAttach();
00051       
00055       virtual void addAttachedPoint( const DtVector& position, int targetVertexIndex );
00056       
00060       virtual void addAttachedPoint( DtUniqueID uniqueID, int targetVertexIndex );
00061       
00065       virtual void addAttachedPoint( DtUniqueID uniqueID, int vtx1, int vtx2, 
00066          double proportion, int targetVertexIndex );
00067 
00069       virtual void setPosition(const DtVector& position);
00070 
00072       virtual void setOrientation(const DtTaitBryan& ori);
00073 
00075       virtual void setVelocity(const DtVector& velocity);
00076 
00078       virtual void setAcceleration(const DtVector& acceleration);
00079 
00081       virtual void setAngularVelocity(const DtVector& angularVelocity);
00082 
00084       virtual void setDeadReckoningSettings(bool deadReckonPosition, 
00085          bool deadReckonVelocity, bool deadReckonOrientation);
00086 
00088       virtual void setSmoothingEnabled(bool enabled);
00089 
00091       virtual void setSmoothingPeriod(float period);
00092 
00094       virtual void updateSpacial(double simulationTime);
00095      
00097       void setMotionModel(const std::string& modelName);
00098 
00100       virtual void setSceneObject( DtSceneObject* sceneObject );
00101 
00102 
00103    protected:
00104       
00105       DtAttachableUpdater* myAttachableUpdater;
00106       DtDeadReckonUpdater* myDeadReckonUpdater;
00107 
00108    }; 
00109 } 
00110  
00111 #endif 
00112  

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)