osgearth_city--osgearth加载TMS服务数据

本文介绍了如何在osgEarth中加载TMS瓦片数据、高程数据和矢量数据,提供了简洁的代码示例,包括影像、高程图层的添加以及矢量数据的样式设置,展示了osgEarth的接口使用方法。

开发Osg有一段时间了,之前一直用的别人提供的sdk,底层代码很少去看,今天突然发现居然不知道如何去加载tm瓦片数据,在网上的资料也是少之又少,唯一一个是osgEarthDrivers的头文件去加载的,结果打开我的osgearth一看,根本没有这个头文件,网上也有这部分资料,一开始还以为是那个不知名的库,后续才知道,因为版本迭代,已经不叫这个名字了,搞了半天在osgearth自带的例子中发现了如何加载tms,故特地记录一下,后续也会记录一下osgearth的每个例子,熟悉一下接口。
1.接口功能
加载tms瓦片数据,加载高程,加载矢量
2. 代码解析
源码全复制于osgearth_city(不同版本不一样,以官网例子为主)
加载tms瓦片数据

void addImagery(Map* map)
{
   
   
    // add a TMS imagery layer:
    TMSImageLayer* layer = new TMSImageLayer();
    layer->setURL(IMAGERY_URL);
    map->addLayer(layer);
}

例子十分简洁明了,
创建一个tms图层,设置tms的地址,可以为线上的,也可以为线下的,如xxx/xxx/tms.xml,对应的即为瓦片数据。
map为mapnode的一个接口变量

加载高程

void addElevation(Map* map)
{
   
   
    // add a TMS elevation layer:
    TMSElevationLayer* layer = new TMSElevationLayer();
    layer->setURL(ELEVATION_URL);
    map->addLayer(layer);
}

与上一个影像无不同

加载矢量

void addStreets(Map* map)
{
   
   
    // create a feature source to load the street shapefile.
    OGRFeatureSource* data = new OGRFeatureSource();
    data->setURL(STREETS_URL);
    data->options().buildSpatialIndex() = true;

    //设置采样率
    ResampleFilterOptions resample;
    resa
评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值