OpenLayers 3,几何图形之间的区域相交 [英] OpenLayers 3, area intersection between geometries

查看:0
本文介绍了OpenLayers 3,几何图形之间的区域相交的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在评估OpenLayers3是否可以帮助我们开发一些我们日常需要的工具,但我被一个功能卡住了,我认为它必须存在,但我找不到有关它的信息。

我需要知道OpenLayers是否允许我们计算两个多边形之间的相交面积。

我们将在地图上加载不同的层。通常是一个具有地形分隔的层和另一个具有地形类的层。

我们需要确定在每个分离中每个类别有多少地形,我最好的方法是将不同层中的多边形相交。

我在OpenLayers3文档中找不到有关此类功能的示例或信息。

如果你们中有谁知道更好的方法来计算地块中的土地类型金额,我也很乐意知道。

编辑:实现一个多边形排序算法怎么样?Sutherland-Hodgman Algorithm会成功吗?

推荐答案

OpenLayers 3本身不提供计算多边形之间交集的函数。但将Turf.js与OL3:

一起使用相对简单
var polygon1 = new ol.Feature(new ol.geom.Polygon(...));
var polygon2 = new ol.Feature(new ol.geom.Polygon(...));

var format = new ol.format.GeoJSON();
var intersection = format.readFeature(
    turf.intersect(
        format.writeFeatureObject(polygon1),
        format.writeFeatureObject(polygon2)));

http://jsfiddle.net/d6o81vc7/

这篇关于OpenLayers 3,几何图形之间的区域相交的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆