【技术实现步骤摘要】
基于图形学的GIS系统模拟水体的数据处理方法及装置
本申请涉及网络地理信息系统
,特别是涉及一种基于图形学的GIS系统模拟水体的数据处理方法及装置、计算机设备、可读存储介质。
技术介绍
在webgis(网络地理信息系统)领域常需要对一些事件或效果进行可视化呈现、还原。例如呈现还原各种水体的流动效果,这些特效往往较难实现,或实现效率很差导致无法集成使用。现有技术的webgis系统本身更倾向与专业的地理属性功能,基本没有提供一些生动特效的集成,但实际在应用webgis系统进行业务开发时会遇到一些需求,例如在水利相关项目需要根据数据表达各种类型的水体,海洋、湖泊、水库、河水甚至是污染水源,webgis系统在表达水体效果时明显缺乏表现力,常见的解决方案是绘制一块蓝色的半透明多边形代替,死板且没有区分度,不能让使用者从视觉上就判断出水体的种类情况,有时不方便用户使用。因此,现有技术有待改进。
技术实现思路
本专利技术针对上述现有技术中的技术问题,提供一种基于图形学的GIS系统模拟水体的 ...
【技术保护点】
1.一种基于图形学的GIS系统模拟水体的数据处理方法,其特征在于,所述方法包括:/n预先将实体和表现分别抽象成几何体和材质;水体模拟效果针对材质进行编写,利用自定义着色器材质直接编写顶点着色器和片元着色器代码进行材质定义;/n以一自定义多边形实体为载体作为模拟水体特效的基础数据;/n通过水体不同的地理特征边界来进行绘制水体的轮廓结构;/n分别输入多个参数作为水体模拟的可调式参数;/n通过柏林噪声算法,输入一个变化的而二维向量(uv)作为参数作为基础进行特征计算,得到模拟水体的参数数据;/n根据提供的参数进行调试,模拟各种水体的效果并输出显示。/n
【技术特征摘要】
1.一种基于图形学的GIS系统模拟水体的数据处理方法,其特征在于,所述方法包括:
预先将实体和表现分别抽象成几何体和材质;水体模拟效果针对材质进行编写,利用自定义着色器材质直接编写顶点着色器和片元着色器代码进行材质定义;
以一自定义多边形实体为载体作为模拟水体特效的基础数据;
通过水体不同的地理特征边界来进行绘制水体的轮廓结构;
分别输入多个参数作为水体模拟的可调式参数;
通过柏林噪声算法,输入一个变化的而二维向量(uv)作为参数作为基础进行特征计算,得到模拟水体的参数数据;
根据提供的参数进行调试,模拟各种水体的效果并输出显示。
2.根据权利要求1所述基于图形学的GIS系统模拟水体的数据处理方法,其特征在于,所述预先将实体和表现分别抽象成几何体和材质;水体模拟效果针对材质进行编写,利用自定义着色器材质直接编写顶点着色器和片元着色器代码进行材质定义的步骤之前还包括:
选用开源图形引擎mapboxgl.js和three.js作为开发工具;选用webgis领域的地图开源引擎mapboxgl.js作为开发工具,用作地理信系统;选用web端通用引擎的three.js作为开发工具,支持图形学底层接口webgl的开发;
进行水体模拟的程序设计;以一个自定义着色器为载体,编写模拟水体流动的程序。
3.根据权利要求1所述基于图形学的GIS系统模拟水体的数据处理方法,其特征在于,所述通过水体不同的地理特征边界来进行绘制水体的轮廓结构的步骤包括:
以一个自定义着色器为载体,为水体模拟效果设置着色器;将水体模拟的效果分解为着色器程序中改变顶点变化的程序;
使平面上每个顶点,按照一定规则进行变化,规律体现在水波纹的连续性、浪潮的节律、水体的反光,水体的颜色。
4.根据权利要求1所述基于图形学的GIS系统模拟水体的数据处理方法,其特征在于,所述分别输入多个参数作为水体模拟的可调式参数步骤中的可调式参数包括:
用于以模拟连续变化的水体滚动的当前时间参数time,用于表示水体反光剧烈程度的反光程度参数heighlightreflect,以及水体流淌速度参数speed,水体波动频度参数freq,汹涌程度参数choppy,全局光照颜色参数lightcolor,以及海水颜色参数watercolor,以及分辨率参数iResolution。
5.根据权利要求4所述基于图形学的GIS系统模拟水体的数据处理方法,其特征在于,所述通过柏林噪声算法,输入一个变化的而二维向量(uv)作为参数作为基础进行特征计算,得到模拟水体的参数数据的步骤包括:
输入一变化的二维向量(uv)作为参数作为基础进行特征计算;
将模拟的水体自定义多边形实体为近似于一个平面;
通过噪声算法的变化的二维向量参数uv参数,选择为vec2(0.0+(1.0+time*speed))*freq,3.5+(1.0+time*speed))*...
【专利技术属性】
技术研发人员:郭博阳,吴闽华,姜坤,卫宣安,
申请(专利权)人:深圳震有科技股份有限公司,
类型:发明
国别省市:广东;44
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。