TMS Tileset ref & question

classic Classic list List threaded Threaded
4 messages Options
TonBrouwer TonBrouwer
Reply | Threaded
Open this post in threaded view
|

TMS Tileset ref & question

Hi,

Fixed a issue in TMS.cpp, around line 297

 //std::string basePath = osgDB::getFilePath(_filename);                
std::string basePath = itr->getHref();

that gets the correct href  for each TileSet

see also http://wiki.osgeo.org/wiki/Tile_Map_Service_Specification


question : is there a method to force re-fetching a specific tile ? I have a tileservice
where tiles are refreshed often, and I do not want to reload the whole layer.

Regards,

Ton

gwaldron gwaldron
Reply | Threaded
Open this post in threaded view
|

Re: TMS Tileset ref & question

Please submit a GitHub Pull Request for bug fixes or changes. Thanks.

As for your question: You can try calling TerrainEngineNode::invalidationRegion(). However, this feature is not well tested so your results may vary. I believe it works under the REX engine; not sure about MP.

Hope this helps
Glenn Waldron / Pelican Mapping
TonBrouwer TonBrouwer
Reply | Threaded
Open this post in threaded view
|

Re: TMS Tileset ref & question

Hi,

gwaldron wrote
Please submit a GitHub Pull Request for bug fixes or changes. Thanks.

As for your question: You can try calling TerrainEngineNode::invalidationRegion(). However, this feature is not well tested so your results may vary. I believe it works under the REX engine; not sure about MP.

Hope this helps
Invalidateregion only had effect when incrementalupdates is set true on the MPterrainnode, however, when I set incrementalupdates to true my app always crashes ...

Ton
TonBrouwer TonBrouwer
Reply | Threaded
Open this post in threaded view
|

Re: TMS Tileset ref & question

Hi,

and some progress :

managed to set Incrementalupdates on the MPterrainnode,
however, _livetiles is false, so invalidateregion() has no effect.

What does approach the effect I want is calling dirtyTerrain() on the TerrainEngineNode.

For now that is ok, as I need a proof of concept. Any hints towards finding a specific tile
and call dirty() on that one only ?

Ton