- Timestamp:
- 01/26/09 17:55:53 (4 years ago)
- Files:
-
- 1 modified
Legend:
- Unmodified
- Added
- Removed
-
OpenSceneGraph/trunk/src/osgPlugins/logo/ReaderWriterLOGO.cpp
r9527 r9550 73 73 #endif 74 74 setStateSet( sset ); 75 viewport = new osg::Viewport;75 _viewport = new osg::Viewport; 76 76 setCullCallback( new logosCullCallback ); 77 77 _contextID = 0; … … 95 95 float vw = 1.0; 96 96 float vh = 1.0; 97 if ( viewport)98 { 99 vx = viewport->x();100 vy = viewport->y();101 vw = viewport->width();102 vh = viewport->height();97 if (_viewport.valid()) 98 { 99 vx = _viewport->x(); 100 vy = _viewport->y(); 101 vw = _viewport->width(); 102 vh = _viewport->height(); 103 103 } 104 104 … … 114 114 glColor4f( 1, 1, 1, 1 ); 115 115 116 std::vector <osg::Image *>::const_iterator p;116 Images::const_iterator p; 117 117 float th = 0.0; 118 for( p = logos[Center].begin(); p != logos[Center].end(); p++ ) 118 for( p = _logos[Center].begin(); p != _logos[Center].end(); p++ ) 119 { 119 120 th += (*p)->t(); 121 } 120 122 121 123 float place[][4] = { … … 131 133 for( int i = Center; i < last_position; i++ ) 132 134 { 133 if( logos[i].size() != 0 )135 if( _logos[i].size() != 0 ) 134 136 { 135 137 float x = place[i][0]; … … 137 139 float xi = place[i][2]; 138 140 float yi = place[i][3]; 139 for( p = logos[i].begin(); p !=logos[i].end(); p++ )141 for( p = _logos[i].begin(); p != _logos[i].end(); p++ ) 140 142 { 141 143 osg::Image *img = *p; … … 161 163 osg::ref_ptr<osg::Image> image = osgDB::readRefImageFile( name.c_str() ); 162 164 if( image.valid()) 163 logos[pos].push_back( image.get());165 _logos[pos].push_back( image ); 164 166 else 165 167 osg::notify(osg::WARN)<< "Logos::addLogo image file not found : " << name << ".\n"; 166 168 } 167 169 168 osg::Viewport *getViewport() { return viewport; }170 osg::Viewport *getViewport() { return _viewport.get(); } 169 171 void setContextID( unsigned int id ) { _contextID = id; } 170 172 … … 173 175 int n = 0; 174 176 for( int i = Center; i < last_position; i++ ) 175 n += logos[i].size();177 n += _logos[i].size(); 176 178 return (n != 0); 177 179 } … … 187 189 virtual ~Logos() {} 188 190 private : 189 std::vector <osg::Image *> logos[last_position]; 190 osg::Viewport *viewport; 191 typedef std::vector < osg::ref_ptr<osg::Image> > Images; 192 193 Images _logos[last_position]; 194 osg::ref_ptr<osg::Viewport> _viewport; 191 195 unsigned int _contextID; 192 196 };
