
openlayers
超大板栗
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Geoserver利用视图来做feature的权限区分
权限区分需要用视图来关联查询权限表,如果符合就查询出来。权限表:sql:-- 查询出用户的权限with user_auth as ( select * from s_user_function where user_id=%uid% and function_id='200002' and authority_type = 1 and system_id = 2),-- 查询出在权限下的用户的features-- 如果scope等于1就只加载当前tentanti.原创 2020-11-20 11:53:06 · 367 阅读 · 0 评论 -
openlayers+geoserver+postgre加载海量数据的办法
geoserver+postgre加载海量数据的办法最近在开发GIS系统,碰巧遇到了海量数据加载的问题。特以博客以记之1.openlayers解决点的海量数据加载openlayers加载海量点数据openlayer在官网提供了支持,主要是通过聚合来实现:https://openlayers.org/en/latest/examples/cluster.html2.openlayers加载非点状海量数据主要是通过postgreSql来过滤掉一部分数据,过滤通过缩放级别zoom来限制,当缩原创 2020-10-16 17:41:10 · 3080 阅读 · 2 评论 -
Openlayer 计算多个feature的外接矩形,并且缩放到合适的视角显示
开发gis系统的时候需要点击一个工程然后打开openlayers地图并且将该工程的线条缩放到合适的区域,对这个问题的解决方案:1.旋转卡壳法求点集的最小覆盖矩形面积以及周长https://www.cnblogs.com/mypsq/p/4348243.html2.计算最小最大经纬度获取外接矩形https://blog.youkuaiyun.com/lihefei_coder/article/details/104997663本文介绍一种另类的思路来解决这一方式,openlayer提供了feature原创 2020-09-07 15:26:37 · 1923 阅读 · 0 评论 -
openlayers H5移动端移动要素
移动要素在openlayers中使用Translate类 ,但是在H5移动端不兼容,于是自己实现了下:代码: let flag = false let features = null this.$refs.rootMap.ontouchstart = (evt) => { console.log('ontouchstart') flag = true features = this.interaction_select原创 2020-05-23 12:41:02 · 1777 阅读 · 0 评论 -
JS判断点是否在线段上
最近在开发gis系统,需要用到在线段上添加点的功能,线段是由很多点连接起来的,所以就要判断点在那一段线段里面,然后插入点。点是否在线段上可以转换为三点是否共线的问题:三点是否共线可以通过判断斜率来判断:设有 p1,p2,q三点,判断三点是否共线:公式:k1 = (p2.y - p1.y)/(p2.x - p1.x)k2 = (q.y - p1.y)/(q.x - p1.x)如果k1 === k2就表示三点共线但是在计算机中,点的计算是浮点型,需要设定一个阈值这里阈值设置为原创 2020-05-18 09:47:27 · 4035 阅读 · 3 评论 -
openlayers 给Feature提供修改撤销功能
最近在开发燃气管道布线gis系统,需要用到openlayers,功能需要自己做一个撤销的功能,openlayers API找了一圈没有发现有提供相应的api,于是自己利用栈的天然先进后出机制实现了一个。撤销功能主要通过一个栈来实现的:undoStack: [] // 撤回栈当修改事件发生时,保存原来的Feature到栈中modify.on('modifystart', (evt) => { var item = evt.features.item(0) .原创 2020-05-09 00:05:12 · 3169 阅读 · 6 评论