- 博客(33)
- 资源 (11)
- 收藏
- 关注
原创 12openlayers热力图
热力图是一种数据可视化技术,它通过颜色的变化来表示数据的大小或密度。热力图的作用非常广泛。本文介绍如何使用openlayers实现热力图。
2024-12-11 18:02:35
295
原创 11openlayers加载矢量瓦片并使用mapbox style
在geoserver上发布矢量瓦片图层,需要安装vector tile plugin,使用openlayers实现能够兼容mapbox style需要使用openlayers之外的类库。如果想获得配置好的geoserver和这部分完整的openlayers支持mapbox style代码,请私-信我。mapbox style具有很强的灵活性,如果仅仅使用openlayers的style来渲染将无法利用这种灵活性带来的便利。同样使用在geoserver上发布的gaosu图层。
2024-12-10 20:22:14
418
原创 10openlayers加载矢量瓦片图层
在小级别数据会进行简化或者抽稀。目前百度地图、高德地图、天地图均采用了矢量瓦片。矢量瓦片的优势在于能够在浏览器端进行渲染、可随时更改地图风格,带来的好处就是减轻服务端的负载,提供灵活地图风格的便利性。tilegrid,通过createXYZ创建一个瓦片网格,extent为[-180, -90, 180, 90], // EPSG:4326的全球范围。tileUrlFunction中定义了tilegrid的网格序号如何转换为tms的瓦片序号。geoserver中gwc提供tms、wmts、wms访问方式。
2024-12-10 20:10:52
621
原创 9openlayers气泡弹窗
在closer上定义click事件,点击时将overlay隐藏,通过setPosition设置为undefined实现。定义一个overlay,其盛放位置为container,即id为popup的div中。将overlay加入到map中。在map上注册单击事件,点击时,获取事件的坐标,展示给content。定义气泡弹窗的html部分,a标签是关闭按钮,popup-content是存放内容的区域。点击地图上的一个图标,弹出气泡弹窗是一个常用功能。获得popup容器,获得content、closer。
2024-12-10 19:38:09
272
原创 8openlayers点聚类cluster
Cluster定义实例时,用来控制聚类的参数主要用distance,单位为像素,用于控制Feature在多少像素距离内就进行聚类。如果说使用ol/layer/WebGLPoints图层能够支持加载10万个点没问题,但是从视觉角度来说,大量的点叠加在一起,也无法区分清楚,这是聚类展示就是为了解决这一问题而存在的。在map上注册click事件,点击聚类时,获得聚类所有Feature的extent,将地图放大到最合适范围。
2024-12-10 19:27:31
348
原创 7openlayers海量点加载
在map上注册鼠标移动事件,使用map的forEachFeatureAtPixel方法,获取到鼠标位置的feature,将属性name取出来进行展示。这里介绍两种方式加载,一种是使用ol/layer/Vector,一种是使用ol/layer/WebGLPoints。当需要把数据量相对较大的点在地图上展示的时候,方案总的来说就两种,一种是后端,一种是前端。同样的方法,模拟10万个点,加载到vectorSource2中,拖动地图不再有卡顿,比较流程。模拟10万个点,使用iconStyle进行渲染。
2024-12-10 19:12:32
459
1
原创 6openlayers添加点以及设置点样式
openlayers中的添加图层方式,都是定义一个source,定义一个layer,然后添加到map中。使用一对经纬度定义一个Point,用这个Point定义一个Feature,对Feature设置样式,将Feature通过addFeature方法添加到VectorSource中。openlayers中,对于点的样式,有Icon、RegularShape、CircleStyle三个类,分别对应图片、规则图形、规则图形。本文取三个点,分别用图片、规则图形、圆形样式进行展示。引入source、layer类。
2024-12-09 20:30:17
455
原创 5openlayers点击查询
通过wms source的getFeatureInfoUrl方法能够构造出一个GetFeatureInfo的url,然后通过fetch方法执行查询,本例中返回的格式是text/html。实现点击查询,可以通过openalayers获取到点击位置的坐标,传递给后端,让后端实现空间查询功能。如果INFO_FORMAT是text/html,返回的结果是一段html代码,直接放入一个div中即可显示。做webgis,一个重要功能就是点击查询,这里介绍如何使用点击查询wms图层。
2024-12-08 18:47:54
304
原创 4openlayers控制wms图层动态修改渲染样式
这里使用的是sld参数。sld_body参数同样能达到这种效果,只不过真正使用时,建议用后端去处理样式生成一个sld文件,放到能够通过url能访问的http server上,前端直接调用。(2)对数据的过滤同样是一个常用的需求,比如对于满足某种条件的要素进行高亮展示。通过动态更新wms请求的sld参数,使用如下区间进行渲染,population字段值小于等于100万的用绿色渲染,大于100万的用红色渲染。除了渲染后的地图和数据无滞后,能够动态改变地图渲染样式,也是wms图层的另外一个优势。
2024-12-07 21:19:21
460
原创 3openlayers加载wms图层
严格来说是加载wms协议的地图服务图层,wms协议的地图服务的优势在于渲染后的地图和数据无滞后,即数据改变了,不需要重新发布地图服务,即可看到最新的数据渲染效果。但是劣势也很明显,没有用到缓存,比较耗服务器性能。跟上一个例子相比,这里的TileLayer,使用的不是'ol/layer/Tile.js',而是'ol/layer/WebGLTile.js',意思是使用WebGL类型的Tile类来加载,当然使用前者也能正常加载,只不过WebGL的Tile类性能高一些。这里只介绍main.js内容。
2024-12-07 09:25:29
640
原创 2openlayers加载CGCS2000坐标系图层
tileGrid的定义中,orign的设置要看wmts的GetCapabilities中如何定义的,此处getTopLeft(projectionExtent)的值正好和90.0 -180.0是一致的,如果不一致,需要用GetCapabilities中定义的值。定义这个Feature的目的是,添加一个坐标为[114.39327,30.50761]的点,检验加载的天地图图层是否存在偏移。openlayers的demo中往往是web墨卡托坐标系的图层,而在国内通常需要加载CGCS2000坐标系的图层。
2024-12-06 23:34:46
1140
原创 1openlayers的第一个例子
前提需要安装好nodejs。创建一个文件夹(也叫目录),这里叫firstmap,创建三个文件main.js、index.html、package.json。其内容分别为:main.js。
2024-12-05 13:49:30
282
原创 关于快速备份还原数据库的探索
近些天,应公司要求在需要加快mysql数据库备份还原的速度。目前备份用的是mysql自带的mysqldump命令,结果输出到一个sql文件中。还原使用mysql命令还原的,由于是单线程还原,所以速度比较慢。近些天的研究历程。首先研究了mydumper,(原备份的sql文件10GB左右)备份20多分钟,还原10个小时,没有体现出多线程应有的效果。接着研究了xtrabackup,由于TA只能装在linux上,而且需要和mysql在同一台服务器上,所以对于mysql在windows服务器上的情况,就不适用
2021-10-20 13:35:25
329
原创 打包可执行jar包
注意plugin下面不是pluginMangement<build> <plugins> <!--配置Maven项目compiler插件--> <!--此工具只会打包原码编译后class文件--> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>mav
2021-10-09 18:13:32
17
原创 cesium触屏上放大会触发旋转
方法1viewer.scene.morphTo2D(0); 做成2d。方法2 修改tilt事件。viewer.scene.screenSpaceCameraController.tiltEventTypes = [Cesium.CameraEventType.RIGHT_DRAG];相当于在触屏端禁用该功能。因为触屏上没有右键。如果后面触屏也想要旋转可以做一个旋转按钮,点一下旋转10度,点一下再旋转10度。...
2021-09-22 18:58:51
547
原创 ubuntu下安装mysql
linux 版本mysql下载地址 https://downloads.mysql.com/archives/community/scp -r /home/soft/mysql-8.0.11-linux-glibc2.12-x86_64.tar.gz root@0.1.1.***:/home/soft/tar -zxvf mysql-8.0.11-linux-glibc2.12-x86_64.tar.gzmkdir -p /usr/local/mysqlmv mysql-8.0.11-linux
2021-08-11 17:12:36
133
原创 mysqldump命令的锁
关于mysqldump命令的--skip-add-locks --skip-lock-tables这2个参数。如果不带有这2个参数,则show open tables where in_use>0 显示所有表都会被使用。造成1 insert超时;2 update超时;3 delete超时。4 select可以查询。如果加上这2个参数,则show open tables where in_use>0 显示仅当前表被使用。1 insert正常;2 update正.
2021-08-05 16:54:13
1275
转载 oralce命令
https://www.cnblogs.com/superming/p/11057196.htmlSELECT SUM(bytes) / (1024 * 1024) AS free_space, tablespace_nameFROM dba_free_spaceGROUP BY tablespace_name;SELECT a.tablespace_name,a.bytes total,b.bytes used,c.bytes free,(b.bytes * 100) ...
2021-07-08 16:44:40
66
原创 obj转3dtiles研究之路
1首先是找到了ObjConvert工具。https://github.com/arcplus/ObjConvert从网上下载下来的obj,转换后的结果丢失节点和纹理。如下是官方的解释说明。此方案废弃掉。Obj file limitations:one mtl fileall faces should have 3 or 4 verticesonly convert ka, kd, Ke, map_ka, map_kd, Ns, d, Tr material info2接着找...
2021-06-21 20:54:39
111
原创 有关C++的指针
1 &是取地址,2 *取值#include <iostream>using namespace std;int main (){ int var; int *ptr; int val; var = 3000; // 获取 var 的地址 ptr = &var; // 获取 ptr 的值 val = *ptr; cout << "Value of var :" << v...
2021-06-11 09:56:26
112
1
原创 b3dm的组成:
b3dm的组成:(1)前28-byte的头部信息: magic - b3dm; version - 1 byteLength - 整个tile的长度,包括头部,单位是字节bytes。 featureTableJsonByteLength - featue table json 部分的bytes长度。 featureTableBianaryByteLength - featue table 二进制部分的bytes长度。 0 batchTableJSONByt...
2021-06-04 15:51:48
839
原创 gltf的格式解释
gltf的格式解释accessors accessor对象用于描述数据的结构和层次意义。它描述了bufferView所引用数据的解释方式。assetbufferViews 一个bufferView对象引用了一个buffer对象的一部分数据。据位置从偏移值byteOffset(0)开始,byteLength长度为6字节。buffers buffer对象描述了一个没有任何结构和层次意义的数据块。它包含了一个uri属性,用于引用外部文件作为数据,或是直接使用数据URI作为数据内容。...
2021-06-03 19:40:52
2122
1
原创 压测Mysql的工具
mysqlslap -hlocalhost -uroot -p123456 -P3306 --concurrency=15000 --iterations=1 --engine=innodb --create-schema=db02 --query="SELECT * FROM item limit 1;"mysqlslap -hlocalhost -uroot -p123456 -P3306 --concurrency=15000 --iterations=1 --engine=innodb --cr
2021-05-29 11:49:05
225
原创 mysql 8.0 不走空间索引
创建表,加入记录CREATE TABLE geom (g GEOMETRY NOT NULL, SPATIAL INDEX(g));insert into geom values(ST_GeomFromText('POINT(47.65100 -122.34900)',4326) );增加字段的srid限定。ALTER TABLE geom DROP INDEX index_g;ALTER TABLE geom MODIFY g GEOMETRY NOT NULL SRID 43..
2021-05-17 18:59:27
456
原创 Mysql索引记录之最左前缀
where条件验证创建数据表test。 CREATE TABLE `test` ( `id` bigint NOT NULL, `a` int DEFAULT NULL, `b` int DEFAULT NULL, `c` int DEFAULT NULL, `d` varchar(45) DEFAULT NULL, PRIMARY KEY (`id`), KEY `index_a` (`a`,`b`,`c`) ...
2021-05-12 14:31:08
337
1
原创 从mysql ibd文件恢复数据。
在一个空白库中,创建好空数据库,空表结构。执行如下命令,执行DISCARD 后,将待还原的ibd文件拷贝到data目录\数据库名目录里面,再执行第二条语句IMPORT 。报出的缺失cfg文件错误不用管。ALTER TABLE tablename DISCARD TABLESPACE; ALTER TABLE tablename IMPORT TABLESPACE; 报错出如下警告,不用管。ALTER TABLE tablename IMPORT TABLESPACE 0 row(s) aff
2021-05-08 16:14:32
512
原创 mysql移动数据目录
将mysql的数据目录,从一个盘拷贝到了另外一个盘,修改了ini文件,启动mysql服务,报错,顺着报的错误,搜索解决方法。报的错误是acess denied。将data目录,右键属性,设置所有用户可编辑。重新启动即可。...
2021-05-07 21:57:51
126
原创 CMS回收器参数解释
采用1:-XX:+AggressiveOpts-XX:MaxDirectMemorySize=2G-Xmx10G-Xms10G-Xmn8G-XX:+UseConcMarkSweepGC-XX:CMSInitiatingOccupancyFraction=70 是指设定CMS在对内存占用率达到70%的时候开始GC(因为CMS会有浮动垃圾,所以一般都较早启动GC)-XX:+UseCMSInitiatingOccupancyOnly 只是用设定的回收阈值(上面指定的70%),如果不指定,JVM仅在
2021-04-27 12:13:44
246
原创 记一次编译Cesium踩坑记录
记一次编译Cesium踩坑记录cd cesiumnpm install npm install express --savenpm install compression --savenpm install request --save npm install yargs --savenpm install gulp --save-devnpm install gulp -gnpm install jsdoc -gnpm run build编译报错,见错误部分。运行npm s
2021-04-27 11:42:23
1188
翻译 GC日志中显示的常见问题和解决方案
本节确定您可能在GC日志中发现的常见问题以及如何解决这些问题。您还可以使用通用GC日志分析器来分析GC日志。Young generation - 太小以下日志片段显示了年轻一代堆大小太小的问题:1.813: [GC1.813: [ParNew: 1152K>128K(1152K), 0.0008100 secs] 16620K->15756K(26936K), 0.0008350 secs] [Times: user=0.00 sys=0.00, real=0.00 secs]
2021-04-24 17:21:21
540
原创 CMS垃圾回收器优化参数解释
CMS垃圾回收器优化参数,做如下记录。能找到的这些可能会起作用的参数,在此做一下记录。-XX:+AggressiveOpts启用这个参数,则每当 JDK 版本升级时,你的 JVM 都会使用最新加入的优化技术(如果有的话)-XX:MaxDirectMemorySize=2G堆外内存最大值-Xmx4G堆内存最大值-Xms4G堆内存初始值-Xmn2G新生代大小-XX:+UseConcMarkSweepGC开启CMS回收器-XX:CMSInitiatingOccupancyFraction
2021-04-24 16:55:14
1524
基于_多规多源_的不动产权籍数据库存储及更新机制研究_高光军.caj
2020-01-03
Spatial Statistics and Modeling (Springer Series in Statistics)
2010-03-23
openlayers项目分析文档
2009-07-31
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人