OpenLayers选择具有控制点的功能

时间:2011-08-04 14:55:13

标签: openlayers gml geojson

我有一个OpenLayers.Layer.GML图层构建,其中包含MapFish提供的GeoJSON数据。 当我选择他的功能时,会显示控制点,并让我编辑功能的形状。好吧,我不想要他们!我不知道它们是如何出现的或原因。 控件,图层或地图中必须有一些设置才能生成此设置。

这是截图

feature selected with control points

我用来生成控件的代码是:

_selectFeatureControl = new OpenLayers.Control.SelectFeature(
    _activeLayer,
    {
        clickout: true, 
        toggle: true,
        multiple: false, 
        hover: false,
        toggleKey: "ctrlKey", // ctrl key removes from selection
        multipleKey: "shiftKey" // shift key adds to selection
    }
 );

图层生成代码为:

layer = new OpenLayers.Layer.GML(
   displayName,
   url,
   {
       format: OpenLayers.Format.GeoJSON,
       isBaseLayer: false,
       visibility: true,

       styleMap: styleMap,

       projection: new OpenLayers.Projection("EPSG:4326")
   }
);                       

谢谢大家!

1 个答案:

答案 0 :(得分:0)

试试这个:

var controls = map.getControlsByClass('OpenLayers.Control.ModifyFeature');
for(var i=0;i<controls.length;i++){
    controls[i].deactivate();
    controls[i].destroy();
}