VR-Forces 4.0.4 Class Documentation
include/vrvOsg/DtOsg3DSegmentedLineModel.h
Go to the documentation of this file.
00001 /******************************************************************************
00002 ** Copyright (c) 2012 MAK Technologies, Inc.
00003 ** All rights reserved.
00004 ******************************************************************************/
00005 
00009 
00010 #pragma once
00011 
00012 #include <vrvOsg/vrvOsg.h>    
00013 #include <vrvCore/Dt3DSegmentedLineModel.h>
00014 #include <vrvCore/DtUniqueID.h>
00015 
00016 #include <vrvOsg/DtOsgSceneConnector.h>
00017 
00018 #include <osg/Group>
00019 
00020 #include <matrix/vlVector.h>
00021 
00022 namespace makVrv
00023 {
00024    class DtDe;
00025 
00028    class DT_DLL_VRVOSG DtOsg3DSegmentedLineModel : public Dt3DSegmentedLineModel
00029    {
00030    public:
00031 
00033       DtOsg3DSegmentedLineModel(DtDe& de, DtUniqueID id);
00034 
00036       virtual ~DtOsg3DSegmentedLineModel();
00037 
00038       //@name Distributed Interface
00040 
00042       virtual void setPosition( int vtx, const DtVector& position );
00043 
00045       virtual void removePosition( int vtx );
00046 
00048       virtual void setOrientation( int vtx, const DtTaitBryan& orientation );
00049 
00051       virtual void setColor( float r, float g, float b, float a );
00052 
00054       virtual void setWidth( float width );
00055 
00057       virtual void setStipplePattern( unsigned int pattern, int repeatFactor );
00058 
00061       virtual void setStyleSegments(const std::vector<double>& segmentPercentages);
00062 
00064       virtual void setSegmentColor(unsigned int segmentIndex,
00065          float r, float g, float b, float a);
00066 
00068       virtual void setSegmentLightningStyle(unsigned int segmentIndex,
00069          bool enableLightningStyle);
00070 
00072       virtual void setSegmentStartArrow(unsigned int segmentIndex,
00073          bool enableArrow);
00074 
00076       virtual void setSegmentEndArrow(unsigned int segmentIndex,
00077          bool enableArrow);
00078 
00081       virtual void setSegmentStipplePattern(unsigned int segmentIndex,
00082          unsigned int stipplePattern, int repeatFactor);
00083 
00085       virtual void setSegmentWidth(unsigned int segmentIndex,
00086          double width);
00087 
00090       virtual void setSegmentStartColor( unsigned int segmentIndex, float r, 
00091          float g, float b, float a );
00092 
00095       virtual void setSegmentEndColor( unsigned int segmentIndex, float r, 
00096          float g, float b, float a );
00097 
00099       virtual void setStopOnTerrainIntersection(bool enabled);
00100 
00102       virtual void setOcclusionEnabled(bool enabled);    
00103 
00105       virtual void setPickable( bool pickable );
00106 
00109       virtual void setVisible(bool isVisible);
00110 
00112       virtual void setSolid(bool isSolid);
00113 
00115       virtual void setModelDefinition( const std::string& str );
00116 
00118 
00119       //@name Local Interface
00121 
00123       virtual void addToScene( const DtUniqueID& sceneObjectId, int modelSet,
00124          int visualizerType );
00125 
00127       virtual void removeFromScene();
00128 
00130       virtual void update();
00132 
00133 
00134    protected:
00135 
00137       virtual void needsUpdate();
00138 
00139    protected:      
00140       DtOsgSceneConnector* mySceneConnector;
00141       bool myConnectedToPostUpdate;
00142    };
00143 }
00144 

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)