- 博客(16)
- 资源 (2)
- 收藏
- 关注
原创 maptalk.three实例化尝试
最近公司项目开始做三维的项目,出于易用性考虑选用了maptalks和maptalks.three。 maptalks是一款国内开发者开发的开源webgis框架,maptalks.three是一个基于maptalks的三维插件,通过这个库魄爷我可以比较方便的使用three的方式来绘制想要的三维效果。开发过程中遇到不少问题,比较麻烦得是大量mesh绘制导致速度变慢和内存暴增,通常的解决问题做法就是使用实例化和合并几何图形的方式。 本文主要介绍实例化的内容,实例化是个什么东西呢?实例化是一
2020-12-28 11:45:09 824 1
原创 GeoSpark入门-可视化
GeoSpark是一种用于大规模空间数据处理的集群计算。 GeoSpark通过一组out-of-the-box空间弹性分布式数据集( SRDDs ) 扩展 Apache Spark,它可以跨机器高效地加载。处理、分析、展示大规模空间数据。准备工作Windows 和 sparkIDEAGeoSpark支持Java、Scala两种,本次开发语言选择Java。GeoSpark参考...
2019-12-16 12:37:41 1186
原创 ArcGIS JS 4加载第三方矢量切片
现在矢量切片越来越普及,对于地图渲染能更轻更快。ArcGIS JS 4.13可以实现加载第三方矢量切片,以下为代码示例,最下方是我之前切的建筑物数据。 当切片大小在1M左右,加载效果还是可以。不过跟mapbox gl相比还是有些逊色,mapbox gl可以加载6M大小的切片,但ArcGIS JS 4却不行。矢量切片还是需要控制好大小,这样才能快速传输和渲染。var style =...
2019-12-08 09:15:51 854 2
原创 海量数据展示(二)-性能优化
背景 之前做的海量数据数据展示,在预处理速度和在线渲染上还有有所欠缺,本文中进行一些优化工作,使得九分钟处理完一千多万面数据的3-12级矢量切片,在线浏览数据请求时间控制在10s左右。准备 软件环境:PostGIS(3.0.0rc2 r17909)和 PostgreSQL( 12.0, compiled by Visual C++ build 1914, 64-bit),数据是微...
2019-11-10 21:49:58 378
原创 海量数据展示
背景 现在我们的数据量越来越来越大,往往会有短时间渲染大量数据的要求,但是往往这些数据过大难以实时处理,整体切片花费时间又过长。在这里提出一种缓存加实时处理的方案。准备 软件环境,PostGIS(3.0.0rc2 r17909)和 PostgreSQL( 12.0, compiled by Visual C++ build 1914, 64-bit),数据是微软开源的房屋数据。P...
2019-10-29 23:04:49 424 2
原创 echart地图使用经验-地图变形和添加数据
关于echart2,echart3地图的使用一点人生经验:1.echart3,echart2加载地图变形修复。最近在使用echart2使用过程中,发现加载海南地图会产生变形。如下图,海南地图产生了较大的变形,于是需要研究怎么才能消除变形。经过一番折腾,修改echart-all.js中_getTransform函数的varxScale = width /mapWidth;varyScale...
2019-06-09 22:55:11 487
原创 echart地图使用经验-地图变形和添加数据
关于echart2,echart3地图的使用一点人生经验:1.echart3,echart2加载地图变形修复。最近在使用echart2使用过程中,发现加载海南地图会产生变形。如下图,海南地图产生了较大的变形,于是需要研究怎么才能消除变形。经过一番折腾,修改echart-all.js中_getTransform函数的varxScale = widt...
2019-06-09 22:01:56 955
原创 postgis计算矢量切片(二)--按值渲染
方案背景 今年三月份写了一篇postgis计算矢量切片,参考了网上资料给出了一份很粗糙的相关方案(文章写的更粗糙)。当时的方案中只能针对gis形状进行渲染,而不能用属性渲染.针对这个情况,本文进行相对应的修改。前期准备 软件是用的是Qgis和Postgis(Postgis版本为2.42 ,Postgresql版本为10.0)。qgis使用Ramdom points in exte...
2019-06-09 21:57:22 752 4
原创 postgis计算矢量切片
没写错,是使用postgis计算出来矢量切片。在这之前先准备一个数据:一个GIS数据表(本例中数据为一百万的点数据,坐标:4326),并在表中添加x,y字段,方便后面的数据筛选。sql中用到了ST_AsMVT和ST_AsMVTGeom。 本文中创建矢量切片很简单,就是使用下方的一个sql,运行结果如下图。接着写一个矢量切片的http服务(参考go-vtile-example,这个...
2019-06-09 21:55:09 969
原创 Mapbox轨迹回放
轨迹回放是webgis中的常见功能,是一种被客户喜闻乐见的GIS动画。 动画是一种短时间内不停重绘达到不断运动的效果。本文中轨迹回放就是事先计算好所需要的点,后面再进行播放。 整体的思路也不复杂,设定总共有一千个点插入,计算出来每个点间隔的步长,我们只要往大于步长的每条线段中插入需要点就好,小于等于步长的线段则取用它的尾部节点。只有两点的线段进行增密就很简单了,求出线段长...
2019-06-09 21:05:00 1564
原创 arcpy多线程热力图
起因是这样一段对话,领导:你会用脚本生成热力图图片吗?我:可以研究下。领导:那这个需求就给你了。我:… 经过一番研究,研究出大概的思路,先将有经纬度的表中的数据筛选出表并生成xy事件,接着利用核密度工具生成栅格,最后呢裁剪栅格通过mapping包出图。 出图过程比较慢,所以考虑使用多线程(一张图五分钟,十九张图多线程九分钟你说吼不吼)。多线程第一次用,一开始打算用数据库存放...
2019-03-10 20:23:12 386 2
原创 ArcGIS js Api 4.x修改三维球背景技巧
通过修改scenceview.js中tileBackground和defaultTileBackground中的png的base64编码就可以达到要求。4.8中通过修改scenceview.jse.DEFAULT_TILE_BACKGROUND = typeof dojoconfig!=undefined &&dojoconfig.bg!=undefined?dojoc...
2019-03-10 20:14:53 653
原创 arcgis js多线程克里金插值初体验
最近做关于雨量插值的项目,本来使用后台的GP工具做的,但是处理时间比较长需要十几秒钟左右,所以研究怎么通过前台来计算。 参考下克里金例子,思路是生成要计算区域的100乘以100网格,然后通过函数进行计算该网格克里金值,最后利用网格和值进行渲染,使用该方法绘制速度有所提高,七秒左右就能绘制完成,不过速度还是能提高的,提高的要诀是使用多线程。 多线程使用比较简单,只要new w...
2019-03-10 20:00:30 1023
原创 arcgis js 3.x使用webgl绘制热力图
ArcGIS Js Api 3.x 热力图在数据量达到三万左右的时候,绘制速度不尽人意,数据量再大些,缩放时候就会很卡,非常影响客户体验。 参考了一下网上webgl热力图,能达到更流畅的绘制的要求。(参考webgl-heatmap和heatmap-layer-js)webgl热力图使用很简单,只需要把屏幕坐标和权重设置到好就行,如下示例heatmap.addPoints([{x:...
2019-03-10 19:57:35 333
原创 geodocker-geomesa安装指南
最近研究geopyspark原本以为大数据研究能告一段落,因为。。。 开玩笑的,还要一起建设社会主义呢!!背景 geotrellis作为一个处理遥感数据的框架,对于遥感数据支持的很棒,但是对于矢量数据却有些不足,首先它的样式选择单一,不能像geoserver使用sld自定义出各种样式,其二就是对与矢量的支持稍弱。那为啥么要用geomesa呢?这个框架资料还是比较多的,支...
2019-02-26 10:43:54 328
原创 超简单的canvas绘制地图
本文使用geojson数据,通过缩放和平移把地图的地理坐标系转换canvas的屏幕坐标系,然后将转换后的数据绘制到canvas上。 首先要计算数据的最大最小值,遍历所有坐标点的最大最小经纬度。在这个步骤要注意坐标点是否都遍历到,因为数据中可能会有多面和洞的存在。 第二步就是转换坐标系,地理坐标系转换canvas的屏幕坐标系。为了让地图能完整在页面展示,我们要有数据的最大最小...
2019-02-26 10:20:43 4427
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人