所以我真的很想修改这个例子:http : //openlayers.org/en/v3.0.0/examples/tissot.html?q=circle
问题是,当我尝试将其应用于地图时,它不起作用,可能是因为我使用了非球形的OSM样式:
var map = new ol.Map({
layers: [
new ol.layer.Tile({
source: new ol.source.OSM()
}),
new ol.layer.Vector({
source: vectorSource
})
],
renderer: 'canvas',
target: 'map',
view: new ol.View({
center: ol.proj.transform([2.1833, 41.3833], 'EPSG:4326', 'EPSG:3857'),
zoom: 2
})
});
还有一个问题:如何创建圆形多边形?如我所见,有两种选择:
根据我的菜鸟级别,以某种方式转换geom.Circle到geom.Polygon中,这是我做不到的
创建我自己的函数来执行此操作,例如openlayers 2:
OpenLayers.Geometry.Polygon.createRegularPolygon = function(原点,半径,边,旋转){
var angle = Math.PI *((1 / sides)-(1/2)); if(rotation){angle + =(rotation / 180)* Math.PI; } var rotationAngle,x,y; var points = []; for(var i = 0; i
有没有人在他们的GIS主人生活中遇到过同样的问题?哪一个更好?还是有一条隐藏的道路,只有明智和坚强的人才能看到?请帮帮我!
ol.geom.Polygon.fromCircle
而不是ol.geom.Polygon.circular
。干杯!