VR-Forces 4.0.4 Class Documentation
include/vrvOsg/DtOsg3DGreatCircleArcModel.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/Dt3DGreatCircleArcModel.h>
00014 
00015 
00016 
00017 namespace makVrv
00018 {
00019 
00020    class DtOsgSceneConnector;
00021 
00024    class DT_DLL_VRVOSG DtOsg3DGreatCircleArcModel : public Dt3DGreatCircleArcModel
00025    {
00026    public:
00028       DtOsg3DGreatCircleArcModel( DtDe& de, DtUniqueID id );
00029 
00031       virtual ~DtOsg3DGreatCircleArcModel();
00032 
00033       // @name Inherited Dt3DGreatCircleArcModel (and Dt3DLineModel) methods
00034       // @{
00035 
00037       virtual void setPosition(int index, const DtVector& position);
00038 
00040       virtual void setOrientation( int index, const DtTaitBryan& orientation );
00041 
00043       virtual void setColor( float r, float g, float b, float a );
00044 
00046       virtual void setWidth( float width );
00047 
00049       virtual void setStipplePattern( unsigned int pattern, int repeatFactor );
00050 
00053       virtual void setStyleSegments(const std::vector<double>& segmentPercentages);
00054 
00056       virtual void setSegmentColor(unsigned int segmentIndex,
00057          float r, float g, float b, float a);
00058 
00060       virtual void setSegmentLightningStyle(unsigned int segmentIndex,
00061          bool enableLightningStyle);
00062 
00064       virtual void setSegmentStartArrow(unsigned int segmentIndex,
00065          bool enableArrow);
00066 
00068       virtual void setSegmentEndArrow(unsigned int segmentIndex,
00069          bool enableArrow);
00070 
00072       virtual void setStopOnTerrainIntersection(bool enabled);
00073 
00075       virtual void setOcclusionEnabled(bool enabled);
00076 
00078       virtual void setSegmentStipplePattern(unsigned int segmentIndex,
00079          unsigned int stipplePattern, int repeatFactor);
00080 
00082       virtual void setSegmentWidth(unsigned int segmentIndex, double width);
00083 
00086       virtual void setSegmentStartColor( unsigned int segmentIndex, float r, 
00087          float g, float b, float a );
00088 
00091       virtual void setSegmentEndColor( unsigned int segmentIndex, float r, 
00092          float g, float b, float a );
00093 
00095       virtual void setPickable( bool pickable );
00096 
00098       virtual void setSolid(bool solid);
00099 
00101       virtual void setVisible(bool);
00102 
00105       virtual void setMaxSubdivisions( int subDivisions );
00106 
00110       virtual void setPreferredSubdivisionSize( double size );
00111 
00114       virtual void setHeightScale( double heightScale );
00115       // @}
00116 
00117 
00118    private:
00119 
00121       DtOsg3DGreatCircleArcModel();
00122 
00124       DtOsg3DGreatCircleArcModel( const Dt3DGreatCircleArcModel& );
00125 
00127       DtOsg3DGreatCircleArcModel& operator=( const DtOsg3DGreatCircleArcModel& );
00128 
00129    protected:
00130       // @name Inherited Dt3DGreatCircleArcModel methods
00131       // @{
00132 
00134       virtual void addToScene( const DtUniqueID& sceneObjectId, int modelSet, int visualizerType );
00135 
00137       virtual void removeFromScene();
00138 
00140       virtual void setModelDefinition( const std::string& str );
00141 
00142       // @}
00143 
00145       virtual void update();
00146 
00148       virtual void needsUpdate();
00149 
00150    protected:
00151       DtOsgSceneConnector* mySceneConnector;
00152       DtUniqueID myParentId;
00153       DtVector myOrigin;
00154       bool myConnectedToPostUpdate;
00155    };
00156 }

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)