Openlayers 改变特征向量风格

标签 openlayers

我在 Openlayer 中有一张 map ,并使用矢量功能向其添加了一些标记作为新图层。然而,默认情况下我得到一个米色圆圈,我想使用样式更改外观,但即使我检查了文档,我也没有设法让它工作。基本上我希望每个标记都有不同的外观,所以我需要为每个标记单独设置。添加标记的代码为:

var point = new OpenLayers.Geometry.Point(16.373056, 48.208333);
point = point.transform(proj, map.getProjectionObject());
var pointFeature = new OpenLayers.Feature.Vector(point, null, null);
pointLayer.addFeatures([pointFeature]);

根据文档,最后一个“null”应该指的是样式,但无论我用什么替换它,它仍然只是默认的米色圆圈......有什么想法吗?

谢谢

最佳答案

这里的代码使用带有点的矢量图层作为标记(图像样式):

var point = new OpenLayers.Geometry.Point(16.373056, 48.208333);
var style =  {
    externalGraphic: 'http://www.openlayers.org/dev/img/marker.png',
    graphicWidth: 21,
    graphicHeight: 25,
    graphicYOffset: -24
};
var pointFeature = new OpenLayers.Feature.Vector(point, null, style);

关于Openlayers 改变特征向量风格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17997936/

相关文章:

javascript - 使用 OpenLayers 在 OSM 中显示自定义本地镜像标记

html - 如何在 Openlayers 弹出窗口中获取按钮?

javascript - Openlayers 使用预渲染和后渲染事件添加加载指示器

javascript - 将图像添加到 openlayers map

django - 在 GeoDjango 的自定义 View 中渲染 GeoQuerySet 的空间数据

google-chrome - 使用源映射调试 openlayers 5 应用程序

vector - 如何将矢量点从一个 LonLat 移动到 OpenLayers 中的另一个?我正在使用OSM

openlayers - OSM : convert ties from projected coordinates in spherical mercator "EPSG:900913" to "EPSG:4326" coordinates

java - 如何使用dojo 1.9显示地理 map

javascript - 如何获取 OpenLayers map 上显示的所有要素?