我正在从标记更改为矢量图层,我不能让我的网站使用任何类型的非默认图标,无论我放在externalGraphic样式属性对地图没有影响。我只看到橙色圆圈。确切地说,无论我在Openlayers.Style中放置什么来设计我的点特征,我都会得到图标的默认外观。 应该很容易,但是我试了几天而且不能让它起作用,所以我来这里寻求帮助。当warstwa_ikon是标记层时,一切都很好,但我需要额外的功能。
这就是我的造型代码:
var StylIkony = new OpenLayers.Style({
externalGraphic : '${symbol}',
graphicWidth : 15,
graphicHeight : 15,
cursor : 'pointer'
});
var StylWarstwyIkon = new OpenLayers.StyleMap ({
default: StylIkony,
delete: StylIkony,
select: StylIkony,
temporary: StylIkony
});
warstwa_ikon = new OpenLayers.Layer.Vector("Ikony Lokali",{ eventListeners: { "featureselected": WywolajRamke }});
warstwa_ikon.StyleMap = StylWarstwyIkon;
map.addLayer(warstwa_ikon);
已经执行了生成功能的代码:
WspolrzedneIkony = new OpenLayers.Geometry.Point(2279231, 7127620);
Ikona = new OpenLayers.Feature.Vector(WspolrzedneIkony,
{ "symbol": "../GRAFIKI/IkonyLokali/10.png", "idLokalu": 1 });
warstwa_ikon.addFeatures([Ikona]);
WspolrzedneIkony = new OpenLayers.Geometry.Point(2279245, 7127630);
Ikona = newOpenLayers.Feature.Vector(WspolrzedneIkony,
{ "symbol": "../GRAFIKI/IkonyLokali/6.png", "idLokalu": 2 });
warstwa_ikon.addFeatures([Ikona]);
我的矢量图层的DOM(warstwa_ikon)StyleMap:
http://s24.postimg.org/hwfjakg0l/stylemap.png
我的矢量图层的DOM首先是Feature,应该设置样式:
http://s9.postimg.org/oxlocyku7/feature.png
抱歉,我还不能包括普通图片。我应该补充一点,这不是访问图标图像文件的问题,我不能让图层使用任何类型的图像,甚至从互联网链接。
答案 0 :(得分:1)
将图层创建时的StyleMap声明为:
warstwa_ikon = new OpenLayers.Layer.Vector("Ikony Lokali", {
styleMap: StylWarstwyIkon,
eventListeners: ...
});
并删除:
warstwa_ikon.StyleMap = StylWarstwyIkon;