自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 基于Cesium的降雨特效

rainripplewithwater

2023-12-22 20:02:55 461

原创 基于Cesium的日照覆盖率分析

基于Cesium的日照覆盖率分析,成果录屏如下,其中以冬至日为分析日期,越接近红色代表日照覆盖率越高,越接近蓝色代表日照覆盖率越低。

2023-10-19 15:13:59 431 2

原创 用简单例子讲清楚webgl模板测试

通过实践,我发现模板测试是这样的一个思路,总结如下:在各种绘制语句之前加入一些配置项,这些配置项的目的是修改stencilbuffer以及决定这次的绘制是不是能通过模板测试,因为只有通过模板测试和深度测试的片源才能最终被绘制出来,而修改后的stencilbuffer里面的值会影响下次绘制是否能通过模板测试,所以模板测试并不会修改绘制出的东西的颜色啥的,他是一种高级裁剪。

2023-09-26 20:12:00 358

原创 基于Cesium粒子特效的带烟雾火焰特效

基于Cesium的粒子特效火焰烟雾渲染。

2023-08-04 14:54:21 627 1

原创 Cesium场数据渲染并实时获取属性

场数据渲染和获取属性。

2023-08-01 14:21:12 156

原创 基于Cesium的可视化大屏效果

可视化大屏2可视化大屏3。

2023-07-27 14:47:00 461 1

原创 Cesium视频图像融合

Cesium Video&Image 融合。

2023-07-07 10:03:44 781 3

原创 线性代数中基向量变换参照原理

经常需要用到,又记不住,所以这里记录下来方便以后翻阅。

2023-07-07 08:09:49 1176

原创 Cesium倾斜裁剪

cesiumbased_clip

2023-07-07 08:06:00 162

原创 Cesium 倾斜压平

Cesium 3dtileset flattern

2023-07-07 08:05:28 499 1

原创 Cesium 3dtileset Clip&Cesium 3dtileset Flatten

cesiumbased_clipCesium 3dtileset flattern

2023-07-03 10:08:07 100 1

原创 Cesium Material Fire

Cesium material fireCesium Material fire2Cesium material fire3Cesium Material fire4

2023-06-21 17:09:11 189

原创 创建页面动态描边

具体方法是给出一条svg格式路径,嵌入到页面里面,通过js控制渐变。

2023-04-24 14:16:09 78 1

原创 基于反射和折射离屏渲染的水面特效在Cesium中的实现

水面特效。

2023-03-24 09:07:43 984 1

原创 关于投影矩阵的理解记录

计算机图形学投影矩阵理解

2023-01-18 11:38:40 180

原创 cesium中绘制面片

在cesium平台上绘制面片,可以实现颜色的rgb随高度渐变,网格间隔数,网格大小,高度范围自定义,并且使用样条曲线公式进行了平滑处理,可自定义样条数量,实现任意阶数的二维样条曲面自动构建。

2022-11-14 16:45:29 1131 2

原创 Cesium和Three融合之第一人称加模拟太阳光加模型加载

Cesium和Three融合场景的一次尝试

2022-08-12 17:31:41 1028 10

原创 cesium3dtiles自定义shader的实现之一

cesium自定义的shader实现改变3dtiles显示,感觉还行吧。但纯粹是误打误撞的,瞎调的参数,shader真是个神奇的东东啊。

2021-11-19 15:21:17 4880 4

原创 记录一些学习资料

按照《3D》书中的资源链接,在此整理一些学习资料,后续更新,所有的书籍或者文章看起来都挺耗费时间,只是列入书单,因为许久之前的书单正在阅读,等阅读完后才能提上日程:Real-Time Rendering :http://www.realtimerendering.com/Interactive Computer Graphics还没找到Opengl Shading language 已经下载pdf,还没看有个网站:http://www.neubert.net/...

2021-10-06 11:46:31 180

原创 《3D Engine Design for Virtual Globes》第四章笔记

第四章属于基础理论中的最后一章,大致且完整第介绍了球面绘制算法的简洁版本。其中包括椭球体的三角格网曲面细分,并将书中提倡的多次迭代方法和传统的圆心角细分、cube细分方法进行了对比。指出提倡方法的好处,为了便于理解,我自己实验了一下该方法,多次迭代效果见博客链接:用四面体中点三角网迭代法进行椭球体曲面细分的实践还包括shading(渲染部分),包括椭球体贴纹理,混合黑暗夜景球纹理和白天纹理实现白天黑夜不同渲染,主要经线和纬线的高亮显示实现方法。最后又加入了一个ray casting细分方法,该方法的核

2021-10-06 11:12:24 235

原创 用四面体中点三角网迭代法进行椭球体曲面细分的实践

按照《3D Engine Design for Virtual Globes》书上4.1.1和4.1.2中介绍的方法,使用webgl从头到尾撸一波,效果如下(录制gif分辨率问题请忽略其中阴影线):迭代层数为0(原始四面体):迭代次数为1:迭代次数为2:迭代次数为3:迭代次数为4:书中说到4已经可以了,但是我觉得到5还是有区别,更加圆,但是5以后确实看不到什么区别了,迭代次数为5:方法大致思路是:1.用四个点绘制一个四面体:2.对四面体每条边取中点投影到椭球体上,对于每个三角

2021-08-28 13:30:56 322

原创 js输出数组全排列代码

/** 输出字符串全排列* 例如:* 入参:abc* 出参:abc acb bac bca cab cba* */function main() { let ttt=getquanpailie("abcd"); console.log(ttt);}function getquanpailie(str) { let strlist=[]; for(let i=0;i<str.length;i++){ strlist.push(str[i]

2021-08-01 13:40:32 465

原创 垂直滚动条挤占子元素宽度的解决方法

html如下所示:假设子元素的高度超过的父元素的自定义高度,那么父元素会出现垂直滚动条,但是这里的垂直滚动条会占用子元素的原本的宽度空间,导致子元素内部的元素排列混乱,解决这个问题的方法:.father{overflow-y:overlay;}这样就可以了,简单吧,正因为简单,所以要记录下来,防止以后忘记了。...

2021-07-27 17:13:09 785 2

原创 vue forceupdate强行刷新组件

先记录,如果我在一个页面里面用到了类似el-checkbox并且绑定了v-model,然而这个model所属绑定的对象是动态生成的,也即是说,该对象的并不是在data中定义过的,于是vue会出现一种坑爹情况:也就是你更新了model,而页面却没有任何改变,原因在于vue没有监测该对象,所以这里使用 this.$forceUpdate();在model改变后强行让vue刷新一遍。...

2021-06-25 15:05:05 455

原创 Cesium开源water材质和粒子效果示例代码研究

文章目录关于本文的说明水特效水特效示例代码水特效属性设置说明水特效实际应用代码火特效火特效实现代码位置的设置重力(Gravity)的控制粒子喷射间歇的强度的控制其他属性设置总结感想关于本文的说明  最近看到国内一位cesium大牛的博客,讲材质material(材质)的,于是对照源码看了下,发现很有研究的意义,首先,源码的项目搭建用的是dojo,所有的样式业务绘制前端都是良好分离,关键是不存在多份拷贝,方便调试,相较于傻瓜式且过度模块化封装的vue而言,这点好很多,不过这些不是本文的重点,本文涉及到的水

2021-05-30 07:50:38 4012 1

原创 读书笔记随感

看《3D Engine…》一书突然冒出来一个问题,为嘛顶点出现缓冲区而Uniform就没有,可能有些引擎为了优化啥的针对后者建立了缓冲区,但少,为什么呢?后来一想,估计是在应用中顶点是很多的而后者是在逐顶点渲染中保持不变的很少数量,所以才这样的吧,建立缓冲区的好处是可以建立索引,然后减少每个顶点的开销,估计是这样吧。...

2021-04-27 18:47:02 95

原创 《3D Engine Design for Virtual Globes》3.5.1节 学习笔记

  opengl标准参照网页:https://www.khronos.org/registry/OpenGL-Refpages/gl4/  书中3.5.1节中记录了VertexBuffers的一些实现。在C#的示例代码OpenGlobe中以VertexBuffer类存在,抽象类,书中列举了一张图对比VertexBuffer和IndexBuffer:  都是从SystemMemory中读取或写入原始二进制数据,区别是前者没有Datatype,后者有,在示例代码中,datatype有两种UnsignedS

2021-04-26 08:29:31 388

原创 cesium加载超图iserver发布的map对其中子layer实现单独控制显隐的实现

  使用超图的iserver发布了多个map图层,每个map中包括多个layer子图层,然后我们尝试使用iClient For WebGL去加载这些图层,于是使用SuperMapImageryProvider去加载单独的map,需求是既能够单独控制map的显隐,也能够单独控制layer的显隐。  单独控制map显隐的方法是加载完成后设置图层的show属性即可,立即生效。然而单独控制其中layer的显隐,试了试其中的setLayerStatusParameters方法,发现虽然能够实现,然而却不能立即生效

2021-04-22 16:25:25 1297 2

原创 关于el-tree左侧展开指示小图标自定义的方法

在el-tree中,其左侧有个小小的指示是否折叠的图表,要是想自定义这个图标,又能用它原来的动画效果,怎么办呢?这里只需要指定el-tree的icon-class属性为我们自定义的class名称,然后我们在自定义的class中写css样式,类似这种: background:url(".*****.svg/png/..."); width:16px; height:10px; padding:0px; box-sizing:

2021-04-19 14:22:38 3951

原创 设置前端元素失去焦点的方法记录

假如在前端vue界面中有一个元素,假设是checkbox吧,被点击后自动获取焦点,只读属性document.activeElement指向该元素,然而要想让它失去焦点,除非点击一个别的能自动获取焦点的元素,比如input之类,要不然就无法做到,好像这些能自动获取焦点的元素是有什么优先权似的,凌驾于其他千千万万普普通通的div至上,且占座完后还不礼貌地让开,真是不够绅士。为了让它能够文明一点,有个小小的方法就是,在其他普通的div中,定义tabindex,随便定义其值是多少,于是在你需要让这些自以为是的家伙

2021-03-12 15:53:42 1920 1

原创 Object.prototype.toString研究

使用Object.prototype.toString方法判断function是否为方法。比如:function f(){}console.log(Object.prototype.toString.call(f);以上代码则会打印:[Object Funtion]之所以不用:f.toString(),是因为后者会重写对应的toString方法,实际上大多数js对象都会重写该方法,比如,方法本身的toString方法重写后则直接输出方法内容本身。function fn(){consol

2020-12-31 18:39:19 252

原创 一次闭包缓存示例程序理解记录

闭包缓存功能程序理解分析偷空看一本讲Javascript的书,里面有一个关于用闭包记录函数缓存的程序。第一次看过去发现绕得很,本来想大致在头脑中留个印象就直接放过去,等以后要用再回头理解,但后来觉得还是认真消化一下比较好,于是稍微分析了一下,在此记录理解过程。程序选自《Secrets of the JavaScript Ninja》示例代码5.14Function.prototype.memoized=function (key) { this._values=this._values||{};

2020-12-28 19:50:32 103

原创 cesium莫名其妙报render normalize错误问题解决

  这又是一次依靠直觉解决bug的经历,由于不会吹牛皮,所以一直从事一线开发,bug排查,扫坑工作,名副其实的搬砖一枚,哈哈,虽然刚开始很累,说出来也没觉得高大上,感觉技术也没什么提升,但是正是由于没多少人愿意做,反而有个自由自在没多少人指手划脚的环境,时间久了,倒是内心乐意起来,日积月累,竟然形成了一种排查bug的直觉,或者说是第六感吧,已经多次从中受益,起到事半功倍的效果。本文提到的bug即为其中之一,错误如下图所示:  从表面上来看这是一个参数错误带来normalize(归一化)操作无法进行下去的

2020-08-18 11:59:18 3182

原创 《计算机图形学》第四版练习题——BresenHam算法适配所有斜率情况

  阅读《计算机图形学》接触到bresenham画线算法,该算法的核心是用精确的化简后结果衡量每次递增单元格后另一个方向要不要相应递增,书中列举了斜率m绝对值小于1的情况算法,本文完善书中代码使之适配所有斜率情况。代码如下:#include <stdlib.h>#include <math.h>#include <Windows.h>void drawpixel(int x, int y){ HDC hdc = GetWindowDC(GetDesktopW

2020-05-21 08:01:56 1292

原创 openlayer加载本地kml的方法

openlayer官网上有kml加载显示的方法:openlayer官网加载kml示例只是其中url是相对前端服务器根目录路径:然而开发过程中出现需要加载本地文件的需求,本来是想通过上传ftp曲线救国,但是考虑到现在很多浏览器放弃了对ftp的支持,故而放弃ftp思路,决定直接选择本地kml文件加载。  由于直接使用file://协议会出现跨域问题,所以使用js的fileReader方式读取...

2020-04-14 16:23:51 2643

原创 openlayer加载wfs图层的地址和坐标系说明

openlayer加载wfs图层的地址说明如果我们把wfs图层发布在geoserver上,那么大多数情况下会生成一个发布地址:http://ip:port/geoserver/工作区名称/ows?service=WFS…openlayer加载时后面也要填补上,这里对后面填补的内容说明一下:http://ip:port/geoserver/工作区名称/ows?service=WFS&am...

2020-02-21 11:05:00 1136

原创 新建vue项目关于eslint的几点说明

安装npm,nodejs,vue-cli这些不讲,这里记录的是后面用命令行新建vue项目的几点注意,否则后面麻烦。cmd命令行定位到要创建项目的文件夹下,然后输入vue init webpack ”项目名称“,命令行会提示一些选项:总之,关于eslint(代码规范格式)和test(测试)这些都不要安装,除非大公司有要求,如果这里安装了,到idea项目中有代码检查(eslint),全是红色...

2020-02-17 16:22:15 2136

原创 关于不定积分的一点思考

有时候看关于高数的课程发现以前困扰自己的好多问题现在还是困扰,可是那些课程里的老师都没有仔细说这些,好像那是显而易见的。以前上大学时候也没在意直接记下来了,现在翻开来就觉得很烦躁,于是觉得进行一个能给自己交代的推导。第一个:可能觉得没什么必要,但是这个问题有时候确实让我感到奇怪。还有一个问题,就是好多初等函数的积分公式可以直接把积分中的df(x)转换成f(x)的导数再乘以dx,如下所示:...

2020-02-10 21:26:30 717 4

原创 将geoserver从tomcat发布移到使用其原始安装目录发布的操作步骤记录

  以前在服务器上部署geoserver,都是先安装然后从其安装目录下拷贝webapp内容放到tomcat目录下的webapp文件夹中,最近服务器上对应盘掉了恢复不过来,掉的盘正好时tomcat目录所在盘,要是搁在以前的做法是将geoserver重新安装一遍然后重复以上步骤,但问题是好多图层都得重新发布,虽然已经备份了图层和相关style文件,但是总得一个个配置,着实麻烦,后来一想,既然原始geo...

2019-12-23 11:15:53 266

原创 《算法导论》实践1-实践工程搭建

  最近工作之余开始学习《算法导论》,这本书涉及内容偏理论,又难啃,所以经过深思熟虑,决定现阶段暂不去关注其中定理证明,基本概念这一块,因为对自己目前用处不大,这一遍过《算法导论》的目标是将其中列举的算法逐一用C++实现。  从本文开始记录实践过程,也好有大家的督促,本文记录实践项目工程搭建:用vs新建一个C++控制台应用程序,命名IntroductionToAlgorithm,然后新建一个筛选...

2019-12-09 17:36:25 158

drawball.html

使用书中介绍的四面体中点投影迭代法对椭球体进行三角格网曲面细分,从而绘制一个椭球体,程序中加入了光照和鼠标拖动旋转,方便用户查看效果,直接运行html即可查看运行效果。

2021-08-20

drawsinx.zip

本代码参照《计算机图形学》中对称方法在纯C++窗口程序中绘制sinx周期曲线。其中drawSinx类为核心绘图类,winmain为主窗口程序。

2020-05-20

js颜色从蓝色到红色渐变.txt

提供一个颜色类,输入RGBA参数,alpha可以不输入。该颜色类有一个静态函数生成从蓝色到红色的渐变颜色数组,传入参数为数组元素个数。

2019-06-10

基于DEM的淹没区域随时间推演程序

基于DEM的淹没区域随时间推演程序,该程序生成一个能表达淹没区域范围随时间变化的地图(tif格式),说明见博客:https://blog.csdn.net/wqy248/article/details/87856722 https://blog.csdn.net/wqy248/article/details/81119550

2019-02-21

cesium跨域加载问题

解决Cesium访问数据跨域问题,数据使用tomcat部署在服务器上。

2019-02-20

project方法实现矢量要素的平移msbuilder

附件是一个arcgis批处理工具,用于实现矢量要素的平移,使用project-defineproject方法,供大家参考

2018-09-27

中国建筑物点状shp

中国建筑物点状shp,包含在中国境内主要建筑物点状矢量数据

2018-08-30

洪水风险实时分析与制图系统

本项目属于全国重点地区洪水风险图二期项目中的子课题之一。目的通过 实时洪水分析,实现对洪水的实时演进模拟,以实时地理空间表达的方式 描述某一时刻洪水的态势、洪水会如何行进,会造成什么样的影响。 • 相比传统的洪水风险图成果编制,系统具有动态、实时,即算即得。方案 可以实时进行参数调整,模拟洪水动态过程,实现洪水动态信息的表达

2018-08-30

空空如也

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

TA关注的人

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