如何在开放图层中获取矢量图层的要素(点)的名称
How to get the name of a feature (point) of a vector layer in Open Layers?
我有以下问题:选择此功能时,如何获取特征的名称(例如点)?我有一个函数,在其中我声明矢量层和特征及其名称(代码的一部分):
function makeLayer(){
var objPoints = {station1: '68.0226656 36.9819691',station2: '66.895908 38.67347'};
// loop through the object with the points
for (var pointStat in objPoints ){
var pointCoords = objPoints[pointStat]
// seperate the coordinates lat and lon
var PosSpace=pointCoords.indexOf(' ');
var lonStr = pointCoords.substring(0,PosSpace);
var lon = +(lonStr); //convert string to number
var latStr = pointCoords.substring(PosSpace+1);
var lat = +(latStr);
// create the geometry
var point = new OpenLayers.Geometry.Point(lon,lat);
// assign the geometry to the feature
var feature_point = new OpenLayers.Feature.Vector(
point,
{name: pointStat} // name of label
);
// add the generated feature to the vector layer
this.layer.addFeatures(feature_point);
}
}
然后,我想有第二个功能来提醒我选择的功能的名称。像这样:
function onFeatureSelect(){
alert(featureName);
}
有可能做这样的事情吗?我希望我的问题足够清楚。谢谢迪米特里斯
您可以使用OpenLayers.Feature.Vector中的属性:
http://dev.openlayers.org/docs/files/OpenLayers/Feature/Vector-js.html#OpenLayers.Feature.Vector.Properties
通过这种方式,您可以指定所需功能的名称,如以下示例所示:
https://gis.stackexchange.com/questions/40689/how-to-show-a-toolip-over-a-feature-with-openlayers
希望这有帮助,
相关文章:
- 更改图层中单个矢量特征的图标
- 谷歌地图热图图层点半径
- 谷歌地图-更改图层图标大小
- 如何通过ID获取图层对象
- 在OpenLayers中同时从多个层获取FeatureFromEvent
- CS5隐藏图层的速度非常慢
- 开放图层导出为 KML 并保留我的地图样式
- 传单问题:使折线的图层组不可单击
- 将图层添加到另一个图层
- 图层删除(图像);在 Kinetic.js 中不起作用
- HTML5 Canvas 的初学者,使用图层
- OL3:如何获取矢量图层的现有样式属性(例如填充颜色、描边颜色等)
- 获取类型将图层添加到地图后出错
- 如何在相位器中的地图图层上获取平铺类型
- 如何在Adobe Illustator中获取所有图层点的坐标
- 获取已在 OpenLayers 3 中单击的图层的特征属性
- 使用 javascript 获取选定图层或图层组数组 (Photoshop CS4)
- 如何在开放图层中获取矢量图层的要素(点)的名称
- KineticJS如何从图层中获取颜色(从图层中选取颜色)
- 如何从Openlayers 3图层中获取像素的颜色值