VR-Forces 4.0.4 Class Documentation
include/vrvOsg/DtOsgOverlayGreatCircleArcModel.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/DtOverlayGreatCircleArcModel.h>
00014 
00015 
00016 
00017 namespace makVrv
00018 {
00019 
00023    class DT_DLL_VRVOSG DtOsgOverlayGreatCircleArcModel : public DtOverlayGreatCircleArcModel
00024    {
00025    public:
00027       DtOsgOverlayGreatCircleArcModel( DtDe& de, DtUniqueID id );
00028 
00030       virtual ~DtOsgOverlayGreatCircleArcModel();
00031 
00032       // @name Inherited DtOverlayGreatCircleArcModel methods
00033       // @{
00034 
00036       virtual void setPosition(int index, const DtVector& position);
00037 
00039       virtual void setOrientation( int index, const DtTaitBryan& orientation );
00040 
00042       virtual void setColor( float r, float g, float b, float a );
00043 
00045       virtual void setWidth( float width );
00046 
00048       virtual void setStipplePattern( unsigned int pattern, int repeatFactor );
00049 
00052       virtual void setStyleSegments(const std::vector<double>& segmentPercentages);
00053 
00055       virtual void setSegmentColor(unsigned int segmentIndex,
00056          float r, float g, float b, float a);
00057 
00059       virtual void setSegmentStipplePattern(unsigned int segmentIndex,
00060          unsigned int stipplePattern, int repeatFactor);
00061 
00063       virtual void setSegmentWidth(unsigned int segmentIndex, double width);
00064 
00067       virtual void setSegmentStartColor( unsigned int segmentIndex, float r, 
00068          float g, float b, float a );
00069 
00072       virtual void setSegmentEndColor( unsigned int segmentIndex, float r, 
00073          float g, float b, float a );
00074 
00076       virtual void setSolid(bool solid);
00077 
00079       virtual void setVisible(bool);
00080 
00083       virtual void setMaxSubdivisions( int subDivisions );
00084 
00088       virtual void setPreferredSubdivisionSize( double size );
00089 
00092       virtual void setHeightScale( double heightScale );
00093       // @}
00094 
00096       virtual void setEventsEnabled( bool );
00097 
00099       virtual void setEventWidth(float width);
00100 
00101    private:
00102 
00104       DtOsgOverlayGreatCircleArcModel();
00105 
00107       DtOsgOverlayGreatCircleArcModel( const DtOsgOverlayGreatCircleArcModel& );
00108 
00110       DtOsgOverlayGreatCircleArcModel& operator=( const DtOsgOverlayGreatCircleArcModel& );
00111 
00113       virtual void setSegmentLightningStyle(unsigned int segmentIndex,
00114          bool enableLightningStyle);
00115 
00117       virtual void setSegmentStartArrow(unsigned int segmentIndex,
00118          bool enableArrow);
00119 
00121       virtual void setSegmentEndArrow(unsigned int segmentIndex,
00122          bool enableArrow);
00123 
00124    protected:
00125       // @name Inherited Dt3DGreatCircleArcModel methods
00126       // @{
00127 
00129       virtual void addToScene( const DtUniqueID& sceneObjectId, int modelSet, int visualizerType );
00130 
00132       virtual void removeFromScene();
00133 
00135       virtual void setModelDefinition( const std::string& str );
00136 
00137       // @}
00138 
00140       virtual void update();
00141 
00143       virtual void needsUpdate();
00144 
00145    protected:
00146 
00147       DtUniqueID mySceneObjectId;
00148       bool myEventsEnabled;
00149       float myEventWidth;
00150       bool myConnectedToPostUpdate;
00151    };
00152 }

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)