VR-Forces 4.0.4 Class Documentation
include/vrvOsg/DtOsgChannelGridLinesInstance.h
Go to the documentation of this file.
00001 /*****************************************************************************
00002  * Copyright (c) 2011 MAK Technologies, Inc.
00003  * All rights reserved.
00004  *****************************************************************************/
00005 /*****************************************************************************
00006  * $RCSfile: DtOsgChannelGridLinesInstance.h,v $ $Revision: 1.17 $ $State: Exp $
00007  *****************************************************************************/
00008 
00012 
00013 #pragma once
00014 
00015 #include <vrvOsg/vrvOsg.h>
00016 
00017 #include <vrvCore/DtChannelGridLinesInstance.h>
00018 
00019 #include <vrvUtil/DtSignalConnectionManager.h>
00020 
00021 #include <matrix/vlVector.h>
00022 
00023 #include <osg/Quat>
00024 
00025 namespace makVrv
00026 {
00027 
00028    class DtDe;
00029    class DtChannel;
00030    class DtChannelConfiguration;
00031    class DtChannelManager;
00032    class DtOsgChannel;
00033    class DtWindowConfiguration;
00034    class DtGridLinesDrawer;
00035    class DtProjectedGridLinesDrawer;
00036    class DtGeocentricGridLinesDrawer;
00037 
00040    class DT_DLL_VRVOSG DtOsgChannelGridLinesInstance
00041       : public DtChannelGridLinesInstance
00042    {
00043    public:
00044 
00046       DtOsgChannelGridLinesInstance(DtDe& de);
00047 
00049       virtual ~DtOsgChannelGridLinesInstance();
00050 
00052       virtual void setChannelName( const std::string& deName,
00053          const std::string& winName, const std::string& channelName );
00054 
00057       virtual void setModelDefinition( const std::string& modelDefinition );
00058 
00060       virtual void setVisible(bool isVisible);
00061 
00063       virtual void setGridType( 
00064          makArchives::DtDisplayUnitsSettingsRecord::CoordSys gridType );
00065 
00067       virtual void setUnitType(
00068          makArchives::DtDisplayUnitsSettingsRecord::DistanceUnits unitType );
00069 
00071       virtual void setUnitType(
00072          makArchives::DtDisplayUnitsSettingsRecord::OrientationUnits unitType );
00073 
00075       virtual void setAutoSpacing( bool autoSpacing );
00076 
00078       virtual void setFixedSpacingAmount( double amount );
00079 
00081       virtual void setXOffset( double offset );
00082 
00084       virtual void setYOffset( double offset );
00085 
00087       virtual void setMinSpacing( int pixels );
00088 
00090       virtual void setDecimalPlaces( unsigned decimalPlaces );
00091 
00093       virtual void setMaxGridLines( int maxGridLines );
00094 
00096       virtual void setEastWestGridLineColor( float r, float g, float b, float a );
00097 
00099       virtual void setEastWestLabelColor( float r, float g, float b, float a );
00100 
00102       virtual void setNorthSouthGridLineColor( float r, float g, float b, float a );
00103 
00105       virtual void setNorthSouthLabelColor( float r, float g, float b, float a );
00106 
00108       virtual void setLabelFont( const std::string& fontName );
00109 
00111       virtual void setLabelPointSize( int pointSize );
00112 
00114       virtual void setLabelXOffset( int pixels );
00115 
00117       virtual void setLabelYOffset( int pixels );
00118 
00120       virtual void setLabelTextWidth( int width );
00121 
00123       virtual void setLabelTextHeight( int height );
00124 
00126       virtual void setGridLineWidth( float width );
00127 
00129       virtual void updateGridLines();
00130 
00131    protected:
00132 
00135       virtual DtProjectedGridLinesDrawer* createAndInitializeProjectedDBGridLinesDrawer();
00136 
00139       virtual DtGeocentricGridLinesDrawer* createAndInitializeGeocentricDBGridLinesDrawer();
00140 
00142       virtual void slot_channelCreated(DtChannelManager*, DtChannel*);
00143 
00145       virtual void slot_channelToBeDestroyed(DtChannelManager*, DtChannel*);
00146 
00148       void slot_channelUpdated( DtChannelManager*, DtChannel* );
00149 
00150    private:
00151 
00153       DtOsgChannelGridLinesInstance( const DtOsgChannelGridLinesInstance& orig );
00154 
00156       DtOsgChannelGridLinesInstance&operator=( const DtOsgChannelGridLinesInstance& rhs );
00157 
00158    protected:
00159 
00160       DtDe& myDe;
00161       DtSignalConnectionManager myConnections;
00162 
00163       DtOsgChannel* myChannel;
00164 
00165       bool myFirstFrame;
00166       DtGridLinesDrawer* myGridLinesDrawer;
00167       DtVector myPreviousCameraPosition;
00168       osg::Quat myPreviousCameraRotation;
00169       double myPreviousScale;
00170       double myPreviousWindowHeight;
00171       double myPreviousWindowWidth;
00172       double myPreviousViewportLeft;
00173       double myPreviousViewportRight;
00174       double myPreviousViewportTop;
00175       double myPreviousViewportBottom;
00176       bool myParamsChanged;
00177 
00178    };
00179 
00180 }

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)