VR-Forces 4.0.4 Class Documentation
examples/exampleRangeLine/DtRangeLineVisualizer.h
Go to the documentation of this file.
00001 /*********************************************************************
00002 ** Copyright (c) 2010 MaK Technologies, Inc.
00003 ** All rights reserved.
00004 *********************************************************************/
00005 /*********************************************************************
00006 ** $RCSfile: DtRangeLineVisualizer.h,v $ $Revision: 1.1 $ $State: Exp $
00007 *********************************************************************/
00011 
00012 #pragma once
00013 
00014 #include <vrvCore/DtSceneObjectVisualizer.h>
00015 
00016 class DtVector;
00017 
00018 namespace makVrv
00019 {
00020    class DtSegmentedLineModelAgent;
00021    class DtShapeModelAgent;
00022    class DtAttachableUpdaterAgent;
00023 }
00024 
00025 namespace exampleRangeLine
00026 {
00027    class DtRangeLineStateListener;
00028 
00032    class DtRangeLineVisualizer : public makVrv::DtSceneObjectVisualizer
00033    {
00034    public:
00036       DtRangeLineVisualizer(makVrv::DtBaseConnection& simulation, makVrv::DtStateListener& listener,
00037          int modelSet);
00038 
00040       virtual ~DtRangeLineVisualizer();
00041 
00043       virtual void setColor(float r, float g, float b, float a);
00044       void color(float& r, float& g, float& b, float& a) const;
00045 
00047       virtual void setStartPoint(const DtVector&);
00048 
00050       virtual void setEndPoint(const DtVector&);
00051 
00053       virtual void setStartAttachPoint(makVrv::DtElementID);
00054 
00056       virtual void setStartPointOffset(const DtVector&);
00057 
00059       virtual void setEndAttachPoint(makVrv::DtElementID);
00060 
00062       virtual void setEndPointOffset(const DtVector&);
00063 
00064       virtual void setSelected( bool b );
00065 
00066    protected:
00067       virtual void createModelAgents();
00068       virtual void destroyModelAgents();
00069       virtual void setModelDefinitionForAgents();
00070 
00071       virtual makVrv::DtUniqueID elementIdToSceneId(makVrv::DtElementID id);
00072 
00073       virtual void resetSpatial();
00074 
00076       virtual makVrv::DtSegmentedLineModelAgent* createLineModelAgent() = 0;
00077 
00078    protected:
00079       DtRangeLineStateListener& myLineListener;
00080       makVrv::DtSegmentedLineModelAgent* myLineModelAgent;
00081       makVrv::DtAttachableUpdaterAgent*  myAttachableUpdaterAgent;
00082    };
00083 
00084    typedef makVrv::DtStateVisualizerCreatorTemplate<DtRangeLineVisualizer> DtRangeLineVisualizerCreator;
00085 }
00086 

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)