在openlayers中绘制行数

时间:2013-03-04 08:34:57

标签: openlayers

我的阵列中总共得到6分下面显示一个中心点

    var a = new Array();
        a[0] = [13.90,52.90];
        a[1] = [14.90,52.90];
        a[2] = [12.90,52.90];
        a[3] = [13.11,51.90];
        a[4] = [12.67,49.34];
        a[5] = [11.45,50.567];
        var centerpoint = new OpenLayers.Geometry.Point(13.41,52.52);

我想在所有阵列点之间绘制线条&中心点(即[0]和中心点之间的线,[1]和中心点之间的线等)。

我无论如何都无法做到这一点。

任何人都可以提出一些方法来做到这一点

1 个答案:

答案 0 :(得分:0)

那么,你想画6条线?您可以使用OpenLayers.Geometry.LineString创建线串,该线串将OpenLayers.Geometry.Point的数组作为参数。请记住,您不能直接使用[13.90,52.90],您必须创建Point对象,就像使用centerpoint一样。

for (var i = 0, len = a.length; i < len; i++) {
    var lineGeom = new OpenLayers.Geometry.LineString([
        new OpenLayers.Geometry.Point(a[i][0], a[i][1]),
        centerpoint
    ]);
    var lineFeat = new OpenLayers.Feature.Vector(lineGeom);
    vectorLayer.addFeatures([lineFeat]);
}