0728-0803周
0728
- 若使用li,使用宽度33%出现了换行情况,则父元素ul标签应该设置font-size:0;
0729
- 在openlayers中,若发生鼠标偏移的情况,则很有可能是CSS问题导致的。在这一次遇到的问题中,由于高度设置问题,map容器出现了滚动条,但是滚动条因为被我进行了强制隐藏操作,所以鼠标出现了偏移的问题。解决的方法是:只要解决掉css导致的高度、滚动条问题,即可以解决鼠标偏移的问题;
- 监听地图渲染完成后的事件:
map.once('postrender', function(event) {
//do somethings
});
0730
- 当修改了geoserver的配置文件时,会出现预览图层时报空指针的错误,目前已经查到的原因是:默认style样式文件的配置出现问题,此时需要重新配置style即可解决问题;
- openlayers中的ol.layer.group只有setLayers方法,可以添加图层到group中去,但是没有从group中移出图层的方法,想要移出图层,只能进行全部移出的操作,使用setLayers方法传进去一个空数组,即使用
const group = new ol.layer.group();
group.setLayers(new ol.Collection([]));
0731
-
在后续的开发中,应当采用每开发一个新功能,对应使用一个开发分支,保证功能使用的正确性和流畅性。具体文档参加:https://www.liaoxuefeng.com/wiki/896043488029600/896954848507552;
-
比较重要的就是使用bug分支,即使用git stash可以保存当前的工作状态,然后可以切换到其他分支中去;
-
常用的git分支操作:
删除本地分支:git branch -d [branchname]
强制删除本地没有merge的分支:git branch -D [branchname]
推送本地分支到远程:git push origin [branchname]
删除远程分支:git push origin --delete [branchname]
拉取本地不存在的远程分支:git checkout -b 本地分支名 origin/远程分支名
- 其他常用的git操作:
reset hard后的恢复:git reflog(查看历史操作,从而找到版本号)
合并分支:git merge [branchname] 在当前分支上合并目标分支
0801
- postgis实现先用bbox选定指定范围内的数据,然后将选出的数据再进行相关的空间查询,平均耗时不稳定,在150ms左右;
select * from
(
SELECT gid, linecolor, proname, protype, proextent,shape_leng, shape_area, geom FROM public.kg_land_bound2
where geom && ST_MakeEnvelope(49521.10320887309,96831.87283041234,50109.537719075444,97307.06544746425)
) as res
where St_Intersects(res.geom, ST_MakeEnvelope(49701.02023537382,96951.72932012533,49865.59139784948,97115.77131487598,4547));
- 在不使用st_makeenvelope的情况下,进行直接的查询,消耗的平均时间为140ms;
SELECT gid, linecolor, proname, protype, proextent,shape_leng, shape_area, geom FROM public.kg_land_bound2
where St_Intersects(geom, ST_MakeEnvelope(49701.02023537382,96951.72932012533,49865.59139784948,97115.77131487598,4547));
-
之所以出现上面这种情况,是因为空间数据库中会根据geometry字段自动的生成索引覆盖,由于索引的存在,所以方法2甚至可能会比方法1还要快,毕竟方法2可以直接通过索引的方式找到指定区域,而且比方法1还要少了一个步骤。
-
求相交部分,给定一个大范围,使用intersects,找出与大范围相交的元素,然后再使用intersection,求出相交数据与大范围的重叠部分并且进行返回;
SELECT gid, linecolor, proname, protype, proextent,shape_leng, shape_area, ST_Intersection(geom,ST_MakeEnvelope(49701.02023537382,96951.72932012533,49865.59139784948,97115.77131487598,4547))
FROM public.kg_land_bound2 where ST_Intersects(geom,ST_MakeEnvelope(49701.02023537382,96951.72932012533,49865.59139784948,97115.77131487598,4547))