当前位置: 首页>>代码示例>>C++>>正文


C++ tilevector::iterator类代码示例

本文整理汇总了C++中tilevector::iterator的典型用法代码示例。如果您正苦于以下问题:C++ iterator类的具体用法?C++ iterator怎么用?C++ iterator使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。


在下文中一共展示了iterator类的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。

示例1: refresh

void
OSGTerrainEngineNode::addElevationLayer( ElevationLayer* layer )
{
    if ( !layer )
        return;

    layer->addCallback( _elevationCallback.get() );


    if (!_isStreaming)
    {
        refresh();
    }
    else
    {    
        TileVector tiles;
        _terrain->getTiles( tiles );

        OE_DEBUG << LC << "Found " << tiles.size() << std::endl;

        for (TileVector::iterator itr = tiles.begin(); itr != tiles.end(); ++itr)
        {
            updateElevation( itr->get() );
        }
    }
}
开发者ID:JohnDr,项目名称:osgearth,代码行数:26,代码来源:OSGTerrainEngineNode.cpp

示例2: updateElevation

void
OSGTerrainEngineNode::removeElevationLayer( ElevationLayer* layerRemoved )
{
    TileVector tiles;
    _terrain->getTiles( tiles );

    for (TileVector::iterator itr = tiles.begin(); itr != tiles.end(); ++itr)
    {
        updateElevation( itr->get() );
    }
}
开发者ID:spencerg,项目名称:osgearth,代码行数:11,代码来源:OSGTerrainEngineNode.cpp

示例3: updateTextureCombining

void
OSGTerrainEngineNode::moveImageLayer( unsigned int oldIndex, unsigned int newIndex )
{
    // take a thread-safe copy of the tile table
    TileVector tiles;
    _terrain->getTiles( tiles );

    for (TileVector::iterator itr = tiles.begin(); itr != tiles.end(); ++itr)
    {
        Tile* tile = itr->get();
        tile->applyImmediateTileUpdate( TileUpdate::MOVE_IMAGE_LAYER );
    }     

    updateTextureCombining();
}
开发者ID:JohnDr,项目名称:osgearth,代码行数:15,代码来源:OSGTerrainEngineNode.cpp

示例4: updateTextureCombining

void
OSGTerrainEngineNode::removeImageLayer( ImageLayer* layerRemoved )
{
    // make a thread-safe copy of the tile table
    TileVector tiles;
    _terrain->getTiles( tiles );

    for (TileVector::iterator itr = tiles.begin(); itr != tiles.end(); ++itr)
    {
        Tile* tile = itr->get();

        // critical section
        tile->removeCustomColorLayer( layerRemoved->getUID() );
    }
    
    updateTextureCombining();
}
开发者ID:spencerg,项目名称:osgearth,代码行数:17,代码来源:OSGTerrainEngineNode.cpp

示例5: lock

// immediately release GL memory for any expired tiles.
// called from the DRAW thread (QuickReleaseGLCallback). 
void
TerrainNode::releaseGLObjectsForTiles(osg::State* state)
{
    OpenThreads::ScopedLock<Mutex> lock( _tilesToReleaseMutex );

    for( TileVector::iterator i = _tilesToRelease.begin(); i != _tilesToRelease.end(); ++i )
    {
        i->get()->releaseGLObjects( state );
    }

    _tilesToRelease.clear();

    //while( _tilesToRelease.size() > 0 )
    //{
    //    _tilesToRelease.front()->releaseGLObjects( state );
    //    _tilesToRelease.pop();
    //}
}
开发者ID:2php,项目名称:osgearth,代码行数:20,代码来源:TerrainNode.cpp

示例6: refresh

void
QuadTreeTerrainEngineNode::moveElevationLayer( unsigned int oldIndex, unsigned int newIndex )
{
    if (!_isStreaming)
    {
        refresh();
    }
    else
    {
        TileVector tiles;
        _terrain->getTiles( tiles );

        OE_DEBUG << "Found " << tiles.size() << std::endl;

        for (TileVector::iterator itr = tiles.begin(); itr != tiles.end(); ++itr)
        {
            updateElevation( itr->get() );
        }
    }
}
开发者ID:ender35,项目名称:osgearth,代码行数:20,代码来源:QuadTreeEngineNode.cpp


注:本文中的tilevector::iterator类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。