Show
Ignore:
Timestamp:
02/02/09 18:15:40 (6 years ago)
Author:
robert
Message:

Improved handling of stats projection size

Files:
1 modified

Legend:

Unmodified
Added
Removed
  • OpenSceneGraph/trunk/src/osgViewer/StatsHandler.cpp

    r9601 r9624  
    4141    _viewerSceneChildNum(0), 
    4242    _numBlocks(8), 
    43     _blockMultiplier(10000.0) 
     43    _blockMultiplier(10000.0), 
     44    _statsWidth(1280.0f), 
     45    _statsHeight(1024.0f) 
    4446{ 
    4547    _camera = new osg::Camera; 
     
    274276 
    275277    _camera->setViewport(0, 0, window->getTraits()->width, window->getTraits()->height); 
     278     
    276279    _camera->setRenderOrder(osg::Camera::POST_RENDER, 10); 
    277280 
    278     _camera->setProjectionMatrix(osg::Matrix::ortho2D(0,window->getTraits()->width,0,window->getTraits()->height)); 
     281    _camera->setProjectionMatrix(osg::Matrix::ortho2D(0.0,_statsWidth,0.0,_statsHeight)); 
    279282    _camera->setReferenceFrame(osg::Transform::ABSOLUTE_RF); 
    280283    _camera->setViewMatrix(osg::Matrix::identity()); 
     
    10091012    float characterSize = 20.0f; 
    10101013 
    1011     osg::Vec3 pos(leftPos,1000.0f,0.0f); 
     1014    osg::Vec3 pos(leftPos, _statsHeight-24.0f,0.0f); 
    10121015 
    10131016    osg::Vec4 colorFR(1.0f,1.0f,1.0f,1.0f); 
     
    10961099        geode->addDrawable(createBackgroundRectangle( 
    10971100            pos + osg::Vec3(-backgroundMargin, characterSize + backgroundMargin, 0), 
    1098             _camera->getViewport()->width() - 2 * backgroundMargin, 
     1101            _statsWidth - 2 * backgroundMargin, 
    10991102            (3 + 4.5 * cameras.size()) * characterSize + 2 * backgroundMargin, 
    11001103            backgroundColor) ); 
     
    12001203        { 
    12011204            pos.y() -= (backgroundSpacing + 2 * backgroundMargin); 
    1202             float width = _camera->getViewport()->width() - 4 * backgroundMargin; 
     1205            float width = _statsWidth - 4 * backgroundMargin; 
    12031206            float height = 5 * characterSize; 
    12041207 
     
    12431246 
    12441247                geode->addDrawable(createBackgroundRectangle(    pos + osg::Vec3(-backgroundMargin, characterSize + backgroundMargin, 0), 
    1245                                                                 _camera->getViewport()->width() - 2 * backgroundMargin, 
     1248                                                                _statsWidth - 2 * backgroundMargin, 
    12461249                                                                characterSize + 2 * backgroundMargin, 
    12471250                                                                backgroundColor));