时间是2017年2月5日17:16:32

由于OE2.9还没有发布,但是我又急于使用OE的道路。

所以,我先编译了正在github上调试中的OE2.9

github网址是:https://github.com/gwaldron/osgearth

但是由于,它是调试中的版本,很多例子还不能跑。

不过,经过一番摸索,我还是调通了一个使用model建立道路的earth

<map>
<options>
<!--添加缓存机制-->
<cache path="../cache" type="filesystem" />
<terrain driver="rex">
<lods>
<lod lod="13" priority_offset="7"/>
<lod lod="16" priority_offset="3"/>
</lods>
</terrain>
</options> <image name="readymap_imagery" driver="tms" opacity="0.9" enabled="true">
<url>http://readymap.org/readymap/tiles/1.0.0/7/</url>
</image> <elevation name="readymap_elevation" driver="tms" enabled="true">
<url>http://readymap.org/readymap/tiles/1.0.0/116/</url>
</elevation> <!--测试地图-->
<image driver="debug"/> <!--平整路-->
<flattened_elevation name="road flattener" min_level="12" max_level="16">
<cache_policy usage="none"/>
<base_layer>readymap_elevation</base_layer>
<features name="roads" driver="ogr">
<!--url>H:/data/fhwa/nhpn2005_08/NHPNLine-mercator.shp</url-->
<url>../data/flatten_mt_rainier.shp</url>
<build_spatial_index>true</build_spatial_index>
</features>
<line_width>50m</line_width>
<buffer_width>50m</buffer_width>
</flattened_elevation> <!--线框模型-->
<model name="boundaries" driver="feature_geom">
<features name="world" driver="ogr">
<url>../data/flatten_mt_rainier.shp</url>
</features>
<styles>
<style type="text/css">
states {
stroke: #ffff00;
render-depth-test: false;
render-clip-plane: 0;
render-order: 1;
}
</style>
</styles>
</model> <!--贴图路面
<road_surface min_level="13">
<cache_policy usage="none"/>
<features name="roads" driver="ogr">
<url>../data/flatten_mt_rainier.shp</url>
<build_spatial_index>true</build_spatial_index>
</features>
<style type="text/css">
default {
stroke: #ffffff;
stroke-width: 25m;
stroke-image: "../data/road.png";
}
</style>
<outer_width>100</outer_width>
</road_surface>
--> <model name="points" driver="feature_geom">
<features name="points" driver="ogr">
<url>../data/flatten_mt_rainier.shp</url>
<build_spatial_index>true</build_spatial_index>
</features> <styles>
<style type="text/css">
points {
model: "../data/red_flag.osg.10.scale";
altitude-clamping: terrain;
}
</style>
</styles> </model> <!--路模型<layout tile_size="2000">
<level class="default" max_range="10000"/>
</layout>-->
<model name="roadssss" driver="feature_geom">
<features name="roadssss" driver="ogr">
<url>../data/flatten_mt_rainier.shp</url>
<build_spatial_index>true</build_spatial_index>
</features>
<styles>
<style type="text/css">
default {
stroke: #ff0000;
stroke-width: 25m;
stroke-tessellation-size: 50m;
stroke-image: "../data/road.png";
altitude-clamping: terrain;
altitude-resolution: 0.0001;
altitude-binding: vertex;
render-order: 1;
render-transparent: true;
render-decal: true;
altitude-offset: 0.05;
}
</style>
</styles>
</model> <!--线框模型
<model driver="feature_geom" min_level="13">
<cache_policy usage="none"/>
<features name="roads" driver="ogr">
<url>../data/flatten_mt_rainier.shp</url>
<build_spatial_index>true</build_spatial_index>
</features>
<layout tile_size="2000">
<level class="default" max_range="10000"/>
</layout>
<styles>
<style type="text/css">
default {
stroke: #ffffff;
stroke-width: 25m;
stroke-tessellation-size: 50m;
stroke-image: "../data/road.png";
altitude-clamping: terrain;
altitude-resolution: 0.00001;
altitude-binding: vertex;
render-order: 1;
render-transparent: true;
render-decal: true;
altitude-offset: 0.05;
}
</style>
</styles>
</model>
--> <bumpmap>
<image>../data/rock_hard.jpg</image>
<octaves>8</octaves>
<intensity>8.2</intensity>
</bumpmap> <xi:include href="viewpoints.xml"/> <libraries>osgearthsplat</libraries>
</map>

这个例子包含了:

1.压路机,就是把地形给压平了

2.模型线框,我用来标识shp文件所在位置的

3.添加4个小旗子模型,也是用来表示shp中的点的

4.重点就是这“道路”模型,我先解决了有的问题,之后我再把他变成真正可行的道路

PS:我之后会使用road_surface来调试,这个出来就差不多了

[原][osgearth]earth文件加载道路一初步看见模型道路的更多相关文章

  1. [原][译][osgearth][EarthFile]关于EarthFile 的Model Layer 讲解(通过earth文件加载模型层)(OE官方文档翻译)

    原文参考:http://docs.osgearth.org/en/latest/references/earthfile.html#model-layer 本人翻译能有限.... 模型层 模型层渲染“ ...

  2. [osgearth]Earth文件详解

    <!—type 属性可以是geocentric和projected两种模式,分别对应地心坐标系和平面投影坐标系,默认是地心坐标模式.Version是osgEarth的主版本号,必须有版本号--& ...

  3. php文件加载、错误处理、方法函数和数组

    数组运算符注意:php中,数组的元素的顺序,不是由下标(键名)决定的,而是完全由加入的顺序来决定.联合(+):将右边的数组项合并到左边数组的后面,得到一个新数组.如有重复键,则结果以左边的为准$v1 ...

  4. scrapy cookies:将cookies保存到文件以及从文件加载cookies

    我在使用scrapy模拟登录新浪微博时,想将登录成功后的cookies保存到本地,下次加载它实现直接登录,省去中间一系列的请求和POST等.关于如何从本次请求中获取并在下次请求中附带上cookies的 ...

  5. 前端设计中关于外部js文件加载的速度优化

    在一般情况下,许多人都是将<script>写在了<head>标签中,而许多浏览器都是使用单一的线程来加载js文件的,从上往下,从左往右. 若是加载过程出错,那么网页就会阻塞,就 ...

  6. php基础知识(3)(文件加载include)

    文件加载 综述: 有4个文件加载的语法形式(注意,不是函数): include,  include_once,  require, require_once; 他们的本质是一样的,都是用于加载/引入/ ...

  7. 文件加载---理解一个project的第一步

    当我最开始写php的时候,总是担心这个问题:我在这儿new的一个class能加载到对应的类文件吗?毕竟一运行就报Fatal Error,什么**文件没找到,类无法实例化等等是一种很“低级”的错误,怕别 ...

  8. HTML5文件加载进度管理

    /** * 文件加载进度管理 */ DownloadUtils = function(options){ options = options || {}; this.init(options); }; ...

  9. osgearth earth文件规范-符号参考

    osgearth earth文件规范-符号参考 osgEarth用样式表渲染要素和注记. 本文档列出了可在样式表中使用的所有符号属性.不是每个符号是适用于每种情况:这只是一个主列表. 跳转到符号: • ...

随机推荐

  1. 微信小程序 --- 获取设备信息

    获取设备信息: wx.getSystemInfo model:手机型号 pixelRatio:设备像素比 windowWidth:窗口宽度 windowHeight:窗口高度 language:语言 ...

  2. 几何+点与线段的位置关系+二分(POJ2318)

    TOYS Time Limit: 2000MS   Memory Limit: 65536K Total Submissions: 10666   Accepted: 5128 Description ...

  3. rest_framework之序列化详解 06

    拿到所有的角色数据 1.urls.py 2.models.py  假设只有3个角色 3.views.py from api import models import json json只能序列化pyt ...

  4. csrf_token之全局认证与局部认证

    1.settings.py没有注释到csrf.当post请求的方式会报错. 接下来就解决问题! 1. django中间件 最多5个 - process_request 请求 - process_vie ...

  5. 170731、Nginx初探

    一. 概念 Nginx——Ngine X,是一款自由的.开源的.高性能HTTP服务器和反向代理服务器:也是一个IMAP.POP3.SMTP代理服务器:也就是说Nginx本身就可以托管网站(类似于Tom ...

  6. Spongebob and Squares---cf599D(数学公式1 + (1+2) + (1+2+3) +....)

    题目链接:http://codeforces.com/contest/599/problem/D 一个3×5(m×n)的长方形,里面包含15个边长为1的正方形,有8个边长为2的正方形,有3个边长为3的 ...

  7. Mirror--日志流压缩

    在SQL SERVER 2008之后,主库和镜像库之间的日志流传送会默认使用压缩,压缩一方面降低了网络压力,另一方面增大了镜像两端的CPU压力. 可以打开 TF 1462 来关闭日志流压缩 SQL S ...

  8. Java Thread 如何处理未捕获的异常?

    Java Thread是不允许异常抛出到本线程之外的,Runnable接口的public abstract void run()是不允许throws Exception的,这在编译时就通不过. 线程异 ...

  9. PhotoSwipe中文API(三)

    http://photoswipe.com/documentation/api.html 所有的方法和这个网页上列出的属性是公开的.如果你想看看例子什么API可以做的,拿在默认PhotoSwipe U ...

  10. centos7.3下ScyllaDB1.6安装

    转自:http://10710016.blog.51cto.com/10700016/1900483 ScyllaDB 安装配置 1.说明: scylladb支持centos7.2 64位 及以上版本 ...