自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(19)
  • 资源 (8)
  • 收藏
  • 关注

原创 osgEarth的Rex引擎原理分析(九十八)边界处瓦片颜色混合的实现

目标:(九十)中的问题172参看文章osgEarth的Rex引擎原理分析(九十五)地形变形(Terrain morphing)待继续分析列表:9、earth文件中都有哪些options((九)中问题)10、如何根据earth文件options创建不同的地理信息引擎节点((九)中问题)11、rex地理信息引擎的四梁八柱((九)中问题)12、osgEarth::Terra...

2020-04-29 07:11:52 533

原创 osgEarth的Rex引擎原理分析(九十七)rex引擎如何绘制等高线

目标:(八十八)中的问题1701、思路:相同高程点用同样颜色着色。2、效果图:3、glsl代码:#version $GLSL_VERSION_STR$GLSL_DEFAULT_PRECISION_FLOAT#pragma vp_name REX Engine - Fragment#pragma vp_entryPoint lzy_last_frag#pr...

2020-04-29 06:54:58 1118 1

原创 osgEarth的Rex引擎原理分析(九十六)RenderingPasses和RenderBindings

目标:(九十五)中的问题177RenderBindings用于声明rex引擎要渲染哪些种类的图层信息,比如影像、父影像、高程、法线等,只指定绑定类别,对每一个绑定类别都会设置其对应的采样器、偏移矩阵、纹理单元号,在rex的setupRenderBindings中有详细描述。RenderingPasses用于声明rex实际有哪些图层要渲染,这里的图层中,同一类型的可能有多个,比如多个影像层、...

2020-04-25 19:39:51 616

原创 osgEarth的Rex引擎原理分析(九十五)地形变形(Terrain morphing)

目标:(十二)中的问题14先看两张图,左图是使用了Image morphing,右图没有使用。morph的作用是使视域边界处的瓦片颜色和高程均匀变化。Image morphing控制颜色,Terrain morphing控制高程。1、实现原理2、如何控制待继续分析列表:9、earth文件中都有哪些options((九)中问题)10、如何根据earth文...

2020-04-25 17:42:55 1766

原创 osgEarth的Rex引擎原理分析(九十四)rex引擎如何显示瓦片的边界

目标:(八十八)中的问题171效果图如下:思路:在文章(osgEarth的Rex引擎原理分析(九十一)晕眩图的制作与实现)的基础上,判断纹理坐标的范围,在边界处用特殊颜色即可。着色器代码如下:if(oe_layer_tilec.s<0.01 || oe_layer_tilec.s>0.99 || oe_layer_tilec.t<0.01 || oe_lay...

2020-04-25 08:04:29 725

原创 osgEarth的Rex引擎原理分析(九十三)rex在渲染时会不会纹理单元内容频繁更改

目标:(九十一)中的问题173答案:会的,这是rex引擎启动后cpu、gpu占用率高德一个原因。1、每一个图层(影响层、高层)在绘制时会往显存上传数据osgEarthDrivers/engine_rex/LayerDrawable.cppvoidLayerDrawable::drawImplementation(osg::RenderInfo& ri) const{ ...

2020-04-25 06:44:22 663

原创 osgEarth的Rex引擎原理分析(九十二)rex自带的着色器代码会硬编码进动态库吗

目标:(九十一)中的问题175思路是将着色器文件的源码都放入一个cpp文件的变量中,再编译链接,就将着色器文件写死在动态库中了。秘密在rex引擎目录下的文件Shaders.cpp.in(最终该模板变成AutoGenShaders.cpp)// ***DO NOT EDIT THIS FILE - IT IS AUTOMATICALLY GENERATED BY CMAKE***#...

2020-04-24 21:50:42 612 1

原创 osgEarth的Rex引擎原理分析(九十一)晕眩图的制作与实现

目标:(七十八)中的问题152思路是:不同的高程采用不同的颜色进行着色,需要对rex引擎现有的片段着色器进行修改。默认的片段着色器是这样的(见osgEarth的Rex引擎原理分析(五十四)rex引擎默认的几个着色器功能分析):#version 330 compatibility #pragma vp_name VP Fragment Shader Main#extension GL...

2020-04-19 18:43:23 1412 5

原创 osgEarth的Rex引擎原理分析(九十)如何设置高度单位(m、km等)

目标:(八十二)中的问题160默认的单位是m,如果要修改为其它单位,需要直接修改profile文件,或者设置缩放比例 <profile srs="+proj=merc +a=6378137 +b=6356752.3142 +lat_ts=0.0 +lon_0=0.0 +x_0=0 +y_0=0 +k=1.0 +units=m +nadgrids=@null +wktext +n...

2020-04-19 12:15:34 733 2

原创 osgEarth的Rex引擎原理分析(八十九)网络资源加载失败还会不会继续加载

目标:(八十二)中的问题161由osgEarth的Rex引擎原理分析(十七)瓦片请求的生成到处理过程详解,可以看出这需要从网络资源的加载过程说起,网络资源加载过程可分为如下几步:1、在瓦片创建时会生成加载网络资源的请求,在TileNode::create中2、在瓦片裁剪遍历时会将加载请求传送到DatabasePager中,...

2020-04-19 08:37:01 459

原创 osgEarth的Rex引擎原理分析(八十八)osgEarth::MemCache详解

目标:(八十二)中的问题1631、在图层open时创建具体在TerrainLayer中实现osgEarth/TerrainLayer.cppconst Status&TerrainLayer::open(){ if ( l2CacheSize > 0 ) { _memCache = new MemCache(...

2020-04-12 20:03:56 549

原创 osgEarth的Rex引擎原理分析(八十七)wmts与xyz、quadtree、tms的关系

目标:(七十九)中的问题157wmts是ogc地图服务的标准xyz是google的地图编号标准(也可以是服务标准)quadtree是微软的地图服务标准tms是开源标准目前osgEarth的rex引擎仅支持xyz、tms和osg的wms地图服务标准。OGC全称——开放地理空间信息联盟(Open Geospatial Consortium), 它的主要目的就是制定与...

2020-04-10 06:38:01 4488 2

原创 osgEarth的Rex引擎原理分析(八十六)osgEarth跨平台的头文件包含设置

目标:(八十三)中的问题166主要是设置不同的操作系统上,系统函数从哪里找#ifdef WIN32# include <windows.h>#else# include <stdio.h># include <stdlib.h>#endif#include <sys/types.h>#ifdef WIN32# i...

2020-04-10 06:00:56 403

原创 osgEarth的Rex引擎原理分析(八十五)osgEarth::Map的cache创建过程

目标:(八十三)中的问题165缓存是有体系的,有高速缓存、文件缓存等。高速缓存在内存中,文件缓存在文件系统中。

2020-04-10 05:58:51 641

原创 osgEarth的Rex引擎原理分析(八十四)OGR与GDAL的关系

目标:(八十二)中的问题164OGR是GDAL的一部分,GDAL侧重栅格数据,OGR侧重矢量数据GDAL(Geospatial Data Abstraction Library)是一个在X/MIT许可协议下的开源栅格空间数据转换库。它利用抽象数据模型来表达所支持的各种文件格式。它还有一系列命令行工具来进行数据转换和处理。OGR是GDAL项目的一个分支,功能与GDAL类似,只不过它提供对...

2020-04-10 05:49:37 1231

原创 C++学习(八十一)deprecated声明

C++ 属性:deprecated (C++14 起)指示声明有此属性的名字或实体被弃用,即允许但因故不鼓励使用。语法[[deprecated]] (1) [[deprecated( 字符字面量 )]] (2) 字符字面量 - 能用于解释弃用的理由并/或提议代替用实体的文本解释指示允许使用声明有此属性的名称或实体,但因故不鼓励使用。编译器通常会对其使用情况发出警告。若指定...

2020-04-08 06:14:45 1197 1

原创 C++学习(八十)Qt的模块

Qt 5 与 Qt 4 最大的一个区别之一是底层架构有了修改。Qt 5 引入了模块化的概念,将众多功能细分到几个模块之中。Qt 4 也有模块的概念,但是是一种很粗的划分,而 Qt 5 则更加细化。本节主要对 Qt 5 的模块进行一个简单的介绍,以便以后大家需要哪些功能的时候知道到哪个模块去寻找。Qt 5 模块分为 Essentials Modules 和 Add-on Modules 两部分。前...

2020-04-06 08:30:16 402

原创 C++学习(七十九)抽象类

定义有=0的函数,就认为是抽象类抽象类是不能实例化的继承抽象类的非抽象类才能实例化

2020-04-06 07:53:56 140

原创 C++学习(七十八)动态库加载入进程空间的时机

1、loadlibray显式加载时2、调用了动态链接库中函数、定义了类型

2020-04-06 07:15:06 576

glview631-setup.exe

直观的查看支持的OpenGL的特性和扩展,你也可以下载OpenGL Extensions Viewer,这个软件也有多个平台的版本。

2021-08-15

osgAndroidExampleGLES2重新组织TestNativeCPlusPlus

osgAndroidExampleGLES2是Eclipse下工程文件,理论上Android Studio也是可以打开执行的,但由于种种原因,无法在Andoid Studio上执行。该程序完全基于Android Studio,用CMake组织C++代码,用Gradle作为构建工具,对osgAndroidExampleGLES2进行了重新配置,可以Android Studio3.5上运行、调试。

2021-06-19

NVIDIA_Nsight_Tegra_Release_3.6.19217.7511.exe

NVIDIA® Nsight™ Tegra®, Visual Studio Edition brings Microsoft Visual Studio to Android, allowing for seamless GDB and JDB remote debugging to all Android devices capable of native application debugging, supporting all Android ABIs – ARM v7, ARM v8, x86, x64.

2021-02-11

wgl相关函数.pdf

wgl是Windows操作系统和OpenGL做交互的一系列扩展api,该文档提供了wgl相关函数及其使用说明。

2020-05-31

mapx功能说明

对mapx的功能有很详细的说明,是开发地理信息系统的一个很好插件

2012-02-23

google输入法

很好用的输入法软件,可以方便的在中英文之间切换,并且字库的命中率也相当高

2008-07-13

瑞星最新杀毒

瑞星最新出的杀毒软件

2008-02-21

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除