问题概述
最近在做海洋标量要素数据分级渲染的时候遇到了一个小问题,在确定插值点的过程中我只想对海洋上的点进行插值,问题来了如何对一个给定经纬度的点判断其属于陆地还是海洋呢?废话少说让我们来解决这个问题
思路方法
鄙人不才想到了两种思路,第一种思路是一种思想上的简化(仅供参考,欢迎指正)
- 将全球的矢量图转栅格然后在Arcmap进行二值化处理,这样给定经纬度就可以根据其在那个栅格来判断其属于陆地还是海洋。误差大,算法复杂度高不推荐
- 根据图形的包含关系来判断。推荐方法?
实现过程
你可能要问为啥要用JS实现,好的让我回答你因为我稀罕JS.哈哈,其实是因为我目前做的是一个Web应用不想频繁的进行前后端交互,想要自己大干一场突然在npm上找到了一个包实现了这个功能,包托管地址is-sea,本着不重造轮子原则我们就把这个包用起来吧。
首先把这个包down下来
git clone https://github.com/simonepri/is-sea.git
安装依赖
npm install
node项目如何直接引入到前端代码使用呢,大家都是JS有话好好说嘛,此时webpack和browserify就闪亮登场了,本文使用browserify来进行打包。两篇参考博客献上