自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

原创 windows安装python的gdal环境简略提要

首先注意安装的不是gdal而是python的gdal从这个网址https://www.lfd.uci.edu/~gohlke/pythonlibs/#gdal中找到和你python版本对应的whl文件,举例,我用的是python3.8,64位操作系统,所以我下载下面那个:下载完成之后 打开cmd切换到该文件所在目录,执行命令: pip installGDAL-3.1.2-cp38-cp38-win_amd64.whl即可安装成功。不必使用pip install gdal,这个会产生.

2020-07-14 11:45:59 185 2

原创 cesium更改3dtiles姿态,包括位置,旋转角度,高度

感觉好多人都写了,我在这就是记录一下:var boundingSphere = new Cesium.BoundingSphere(Cesium.Cartesian3.fromDegrees(120,37,0.0), 0);//外接圆 var viewer = new Cesium.Viewer("cesiumContainer", { terrainProvider: Cesium.createWorldTerrain(), });...

2020-06-19 14:40:27 669

原创 vue在同一个页面重复引用相同组件如何区分二者

1.使用情境:我在同一个vue中引用了同样的一个图层选择的组件,需要区分二者的选择的radio值,如果不做区分,这二者选择的radio值看上去将会一样2.解决方法:先说原理,这个重复引用的组件虽然一样,但是二者在被创建的时候各自走了一遍生命周期,所以变量之间不冲突。首先在引用组件中新增一个props,这里命名为spareId,用来区分二者。然后父组件传值:然后在子组件raido中引入这个spareId:这样就能区分二者选择的不同值。原理是这样,也可根据实际..

2020-05-23 09:47:06 922

原创 vue中使用element-ui

首先使用npm安装:npm install element-ui然后在src文件夹中找到main.js,引用如下:import ElementUI from 'element-ui'import 'element-ui/lib/theme-chalk/index.css'Vue.use(ElementUI)...

2020-03-31 16:20:41 45

原创 左右值编码树型数据库设计

以下内容是我整理的笔记一、定义基于树型结构的前序遍历方法,给每一个节点赋予“左值”和“右值”,实现树型结构的快速查询。举例,以下是一个食品树型族谱的例子:接下来进行按照下图箭头进行前序遍历:每个节点的左边的值就是“左值”,在这我们用Lft表示,右边的值就是“右值”,在这用Rgt表示,然后构建表:二、适用场景这种编码方式适合用于快速查询节点所...

2020-02-16 17:14:09 205

原创 geoserver自定义坐标系

首先你要有自定义坐标系的七参比如proj=merc+a=6378137+b=6378137+lat_ts=0.0+lon_0=0.0+x_0=0.0+y_0=0+k=1.0+units=m+nadgrids=@null+wktext+no_defs然后打开data_dir/user_projections文件夹,找到epsg.properties文件比...

2019-09-23 16:19:00 921

原创 谷歌切片和tms切片的区别以及经纬度转化成二者行列号的方法

我的原文:http://www.kingpika.top:5599/post/84一、相同点:首先二者的缩放级别zoom和瓦片数量都遵循下列表格,读者脑海中想必已经有画面了 Zoom 瓦片排列 瓦片总数 0 1 tile covers whole world 1 tile...

2019-09-18 10:25:55 1106

原创 flask 无法导入父级文件夹中的py解决方法

看一下那个文件夹有没有__init__.py文件,没有的话新建一个,空的也行,就能找到了应该是没有这个文件flask不会把它当作一个包,不会引入

2019-09-06 15:30:06 254

原创 根据epsg代号进行坐标的批量投影转换

接口来源:http://epsg.io/transform#s_srs=4490&t_srs=4326转换参数使用的是默认值而不是精确的自定义数值,有更高精度要求就别用了,或者拿去改改也行。将要转换的坐标文本放在txt文件夹里,然后直接运行convert.py脚本。格式参考示例数据demoData.txt,其中s_srs为待转换坐标的epsg代号,t_srs为输出的坐标的epsg...

2019-06-19 17:57:58 924

原创 javascript--bind的用法

原文链接:http://www.kingpika.top:5599/post/80与call很相似,都可以改变函数体内this的指向。bind会创建一个新函数,称为绑定函数,当调用这个绑定函数的时候,绑定函数会以创建它时传入bind()方法的第一个参数作为this。传入bind()方法的第二个以及以后的参数加上绑定函数运行时本身的参数按照顺序作为原函数的参数来调用原函数。与call不同...

2019-06-19 17:09:01 57

原创 python批量导入shp至postgresql数据库中

原文地址:http://www.kingpika.top:5599/post/79一、准备好数据并组织成以下格式:点线面格式均可二、代码(需要安装相应的库)#coding:utf-8import geopandas as gpdimport pandas as pdfrom sqlalchemy import create_enginefrom geoalchemy2 ...

2019-06-10 17:15:30 699

原创 python读取kml为geojson

(服务器到期,修复中)转载自本人的文章:http://www.kingpika.top:5599/post/65

2019-03-21 20:09:33 1036

原创 使用geoalchemy2进行空间表的建立和空间数据的录入

编程语言是python,使用的是flask框架我之前进行postgis数据库增删改查的时候一直是自己手动在pg里面创建空间数据表,然后用sql语句进行操作,觉得也没什么,刚开始知道orm的时候觉得这玩意好麻烦,sql语句又不是不能用,还灵活,真正用一下才发现真香。基础的orm我就不多讲了,在这说一下GIS相关的空间表,在这里我们用的类库是geoalchemy2一、建表:通过代码就可以创...

2019-02-03 09:46:05 483

原创 vue中使用leaflet,地图加载时残缺时的解决办法

通常这种情况摁一下f12才会显示正常在map容器所在的vue页面中,在方法中加入this.$nextTick(()=>{创建地图对象代码})外面包的那一层的作用是在所有元素加载完毕之后才执行,因为这种情况一般是容器dom还没调整到相应大小,地图就已经创建了,所以在加载完毕之后会显示异常,基于此,就不要在这个里面进行其他操作了...

2018-11-28 09:02:27 2487

原创 搭建简单的flask框架,并连接postgresql进行postgis操作

一、网站结构如下:注意html页面需要放在名为templates的文件夹下,这是flask的规定。二、Postgis操作位于pgConnect.py中,代码如下:#encoding: utf-8import psycopg2def insertGeo(start_time,end_time,reg_name,reg_radius,valid_time,reg_gov,gu...

2018-10-23 17:38:35 3513 2

原创 iframe在更改了src之后对应的网页并未刷新

document.getElementById(iframe的id).contentWindow.location.reload(true);在更改src之前加上这一句即可。

2018-10-22 13:09:08 11070

原创 windows环境下pip安装

前提是得先安装了python噢一、首先安装setuptool:https://pypi.org/project/setuptools/#files  从该网址下载zip,并解压;打开cmd,cd到解压目录,运行命令:python setup.py install如上图则说明成功;二、接下来安装pip:https://pypi.org/project/pip/#files...

2018-10-17 16:15:55 8206

原创 Mac中使用python发布网站

 打开终端输入命令:cd 待分享的文件夹全路径(将那个文件夹拖到终端就可以显示了)点击回车然后输入命令:python -m SimpleHTTPServer 端口号点击回车,出现以下表示成功:如果该文件中有index.html,默认显示该网页,否则会列出该文件夹的内容...

2018-10-07 16:20:09 380

原创 pyhton json的序列化和反序列化

需要import jsonjson.loads():将字符串反序列化成json对象json.dumps():将json对象序列化成字符串 

2018-09-20 11:06:10 77

原创 python去除中文字符

用python发送http请求,接收返回的字符或是在其他处理情况中会出现中文乱码情况jsonData为待处理的字符jsonData=json.dumps(jsonData)jsonData.replace('u\'','\'')jsonData=jsonData.decode("unicode-escape") #将unicode编码转化为中文 处理之前:处理之后:...

2018-09-20 10:59:46 7568

原创 postgresql表中明明有这个字段却报错不存在该字段

如果你实在一筹莫展了,把字段名改成全小写试试

2018-09-17 11:53:46 6438 3

原创 js调用vue中的methods方法

在此vue指的是后缀为.vue的文件,而不是引用了vue.js的那种形式 在.vue中有这么一个方法:你想在js中调用,或者是用js中的一个方法copy它,使用如下操作:在methods中新添一方法:在mounted中调用:js中:这样FixedTime.approves就等同于那个想导出的方法了,完毕。...

2018-09-06 14:30:54 17361

原创 python根据输入的数据在地图上生成热力图效果

 #-*-coding:utf8-*-#输入data生成热力图html,借助了leaflet,没网不能用import osimport foliumdata=[[ 39.90403 , 116.407526 , 23014.59 ] , [ 39.084158 , 117.200983 , 16538.19 ] , [ 38.042309 , 114.514862 , 5440...

2018-09-02 21:04:07 8957 1

原创 geoserver数据存储迁移

本文介绍了如何将geoserver默认的data_dir即数据存储文件夹迁移的过程;停止geoserver服务:可在开始菜单中中点击”stop geoserver”或是在任务管理器中选择geoserver服务右键点击停止。将data_dir整个拷贝(或剪切)到新位置 打开环境变量设置,将GEOSERVER_DATA_DIR改成新位置,点击确定。 打开geoserver配置文件,路径为...

2018-08-21 14:50:09 1295

原创 开源切片工具--TileStache

因为有体积较大的地理数据需要进行可视化,可是直接在前端叠加上一个geojson文件或是shp又太浪费性能,于是就想把它切成瓦片。接下来讲一下这个tilestache的配置与使用。首先是电脑环境,我是windows64位系统,python是32位(这个工具好像只支持32位)首先安装依赖包mapnik,注意并不是简单的pip install就行,这个需要经过一定的配置:  1.下载http...

2018-07-25 11:38:04 3048 1

原创 geoserver发布矢量瓦片服务发现Published zoom levels最多只支持到10级的问题

如图,3857只支持到10级,建议将加载的服务更换为900913,可支持更高的显示级别900913:由GOOGLE定义,初始代码为EPSG:900913,现已经被确定为EPSG:3857,同时废除900913。官方名称为pseudo mecator,即是伪墨卡托。...

2018-07-17 18:07:36 765

原创 c#调用python

刚开始打算c#直接调用python,但是因为import了其他文件和模块,报错,看网上解决方法说啥的都有,可是一一照做,一一不行。后惊人提醒,发现可以曲线救国,用c#调用cmd然后调用python。参考博文:170520 cmd 下带参数执行python 文件 - CSDN博客 https://blog.csdn.net/qq_33039859/article/details/72589499之所...

2018-07-11 16:42:52 437

原创 python ogr shp字段写入中文乱码问题

首先,先确认一下你的字段值是不是乱码,如果是,按照以下方法:    我的字段值是来自于一个geojson字符串,我在对它解析时做了如下处理:    properties = fea.get("properties") pro_json=json.dumps(properties) pro_json.replace('u\'','\'')#将unicode编码转化为中文先处理一下 ...

2018-07-09 17:01:00 1667

原创 proj4,七参数与坐标转换原理

一、wgs84,地心坐标系(地心坐标系,是在大地体内建立的O-XYZ坐标系。原点O设在大地的质心,通常分为地心空间直角坐标系(以x,y,z为其坐标元素)和地心大地坐标系(以B,L,H为其坐标元素)),可以与1954北京坐标系或1980西安坐标系等参心坐标系(在参考椭球内建立的O-XYZ坐标系。是经典大地测量的一种通用坐标系。根据地图投影的理论,参心大地坐标系可以通过高斯投影计算转化为平面直角坐标系...

2018-07-02 08:47:26 7898

转载 基于pgrouting的任意两点间的最短路径查询函数(转)

原文:https://blog.csdn.net/longshengguoji/article/details/46051111前面文章介绍了如何利用postgresql创建空间数据库,建立空间索引和进行路径规划。但是在真实的场景中用户进行路径规划的时候都是基于经纬度数据进行路径规划的,因为用户根本不会知道道路上节点的ID。因此文本讲述如何查询任意两点间的最短路径。    一、定义函数名及函数参数...

2018-04-26 23:07:28 436

原创 关于vue开发的语法注意事项

1.vue中js与js之间或js与.vue文件之间进行变量传递是使用import和export,如图:使用者: 提供者:所以在Vue使用的js文件中,多将该文件中会创建的所有对象写入一个父级对象中,使用export将父级对象导出,所以要使用js对象字面量的语法,例如function 函数名(){}这种形式应该改成:函数名:function(){}。2.ajax异步请求的then处理事件中不能直接用...

2018-04-24 17:38:31 393

转载 空间索引--网格索引

原文地址:http://www.cnblogs.com/LBSer/p/3403933.html深入浅出空间索引2  第一篇讲到了传统的索引如B树不能很好的支持空间数据,比如点(POI等)、线(道路、河流等)、面(行政边界、住宅区等)。本篇将对空间索引进行简单分类,然后介绍网格索引。(深入浅出空间索引1:http://www.cnblogs.com/LBSer/p/3392491.html)一、空...

2018-04-22 20:38:39 4259

转载 为什么需要空间索引(转载)

原文地址:http://www.cnblogs.com/LBSer/p/3392491.html一、问题  先思考个常见的问题:如何根据自己所在位置查询来查询附近50米的POI(point of interest,比如商家、景点等)呢(图1a)?  每个POI都有经纬度信息,我用图1b的SQL语句在mySQL中建立了POI_spatial的表,其中lat和lng两个字段来代表纬度和经度。为后续分析...

2018-04-22 19:03:30 364

原创 利用geoserver发布矢量切片服务,进行切图到本地以及使用leaflet加载显示

零、插件准备:进入geoserver官网,根据你的geoserver版本号下载vectortiles-plugin插件,目前发现2.12的版本不好使,2.13和2.11的该插件都可正常使用。下载之后放入geoserver安装目录\webapps\geoserver\WEB-INF\lib下,重启。一、首先确认你需要的切片服务坐标系,在此以epsg3857坐标系为例:打开geoserver,创建gr...

2018-04-11 22:43:37 13894 18

原创 Geoserver 安装及CORS跨域资源访问配置

在使用了geoserver发布了矢量切片地图并使用了https://github.com/Leaflet/Leaflet.VectorGrid插件访问之后,莫名的出现了跨域问题:Response to preflight request doesn't pass access control check: No 'Access-Control-Allow-Origin'    以下省略,想必依靠以...

2018-04-11 22:04:20 5450 4

原创 IIS跨域配置

打开网站的标头设置,点击右上角添加,输入如下key和value值: key:Access-Control-Allow-Headersvalue:Content-Type,Token key:Access-Control-Allow-Originvalue:* key:Access-Control-Expose-Headersvalue:Token 重新启动即可...

2018-03-25 22:18:24 1458

原创 leaflet加载地图出现瓦片乱序的问题

记得加上leaflet.css记得加上leaflet.css记得加上leaflet.css

2017-11-21 11:46:06 1904

原创 ArcGIS Server重装后保留原有服务的问题

在安装Sever完毕后,需要选择是否创建新站点,此时选择新建站点而不是加入现有站点,在设置完用户名密码之后(不必和之前一样),选择存储路径;此时选择之前的Sever站点存储文件夹,因为之前遗留下来的锁文件未删除,此时点击确定会报错,因此需要去该文件夹下删除".site"文件夹、"lock"文件夹以及version.lock文件。再点击确定,即可顺利安装PS:站点创建完毕之后多刷新几次

2017-10-25 14:41:22 1140

原创 webapi 配置swagger出现问题:not supported by swagger 2.0

一个controller中只能有一个HttpGet请求,多了就会报错。建议减少重载方法,将其他Get方法分开如果在swagger.config中加上c.ResolveConflictingActions(apiDescriptions => apiDescriptions.First());则会只显示第一个get方法另:可以不安装swagger ui for .net,安了有可能会

2017-08-31 10:02:25 5743 3

原创 leaflet加载tms服务

首先使用GeoServer发布tms服务参考:基于GeoServer切片地图服务的发布 - TechSnail - 博客园 http://www.cnblogs.com/TechSnail/p/3205454.html发布完毕,点击了“Submit”之后,等待切片任务完成,完成之后,点击左上角GeoServer的logo,进入首页,在右侧点击TMS下的版本号链接进入服务列表,找到你...

2017-08-14 10:06:38 2761 1

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