VR-Forces 4.0.4 Class Documentation
include/vrfGuiCore/DtEntityExtentVisualizer.h
Go to the documentation of this file.
00001 /*********************************************************************
00002 ** Copyright (c) 2012 MaK Technologies, Inc.
00003 ** All rights reserved.
00004 *********************************************************************/
00005 /*********************************************************************
00006 ** $RCSfile: DtEntityExtentVisualizer.h,v $ $Revision: 1.1 $ $State: Exp $
00007 *********************************************************************/
00011 
00012 #pragma once
00013 
00014 #include <vrfGuiCore/vrfGuiCore.h>
00015 #include <vrvCore/DtStateVisualizer.h>
00016 #include <vrvCore/DtSceneObjectAgent.hpp>
00017 #include <matrix/vlVector.h>
00018 #include <vrvCore/DtShowHideContext.h>
00019 
00020 const makVrv::DtShowHideContext::ShowHideContext EntityExtentsHidden = (makVrv::DtShowHideContext::ShowHideContext)(makVrv::DtShowHideContext::UserBase + 10);
00021 const makVrv::DtShowHideContext::ShowHideContext EntityExtentHiddenBySelection = (makVrv::DtShowHideContext::ShowHideContext)(makVrv::DtShowHideContext::UserBase + 11);
00022 
00023 namespace makVrv
00024 {
00025    class DtModelAgent;
00026    class DtAttachableUpdaterAgent;
00027 }
00028 
00029 namespace makVrf
00030 {
00033    class DT_DLL_VRFGUICORE DtEntityExtentVisualizer : public makVrv::DtStateVisualizer
00034    {
00035    public:
00037       DtEntityExtentVisualizer(makVrv::DtBaseConnection& simulation, makVrv::DtStateListener& listener,
00038          int modelSet);
00039 
00041       virtual ~DtEntityExtentVisualizer();
00042 
00044       virtual void setDimensions(const DtVector& dim);
00045 
00048       virtual void setOffset(const DtVector& offset);
00049 
00051       virtual void setColor(float r,float g,float b,float a);
00052 
00054       virtual void setShowExtents(bool);
00055 
00057       virtual void setShowOnlyIfSelected(bool);
00058       bool showOnlyIfSelected() const
00059       {
00060          return myShowOnlyIfSelected;
00061       }
00062 
00063       virtual void setVisible(bool yesNo);
00064 
00066       virtual void setSelected(bool);
00067 
00068       virtual void setLockUpdates(bool b);
00069       bool updatesLocked() const;
00070 
00071    protected:
00072       virtual void createModelAgents();
00073 
00074       virtual void destroyModelAgents();
00075 
00076       virtual void setModelDefinitionForAgents();
00077 
00079       virtual makVrv::DtModelAgent* createExtentModelAgent() = 0;
00080 
00081    protected:
00082       makVrv::DtModelAgent* myEntityExtentModelAgent;
00083       makVrv::DtAttachableUpdaterAgent* myUpdater;
00084       makVrv::DtSceneObjectAgent* myExtentVisualizerAgent;
00085       float myColor[4];
00086       DtVector myDimensions;
00087       DtVector myOffset;
00088       bool     myShowOnlyIfSelected;
00089 
00090       bool myLockUpdates;
00091    };
00092 }
00093 

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)