我有一个页面显示从kml 文件导入的矢量图层(基本上就像日晷示例)。它运行得非常好,既可以仅使用固定策略,也可以同时使用固定策略和集群策略。
我想创建一个混合显示,而“包含 1 个功能的集群”将显示为包含在 KML 文件中的原始自定义图标<Style><IconStyle><Icon><href>img/arrowRed.png
,例如。
现在,如果我使用集群策略,则使用默认图标(黄色磁盘)显示 1 个(功能)的集群。
我宁愿不使用任何不是标准开放层的插件或库。 有什么建议么?
下面是使用集群的原始javascript代码的一部分(删除集群策略声明new OpenLayers.Strategy.Cluster()
和自定义图标显示就好了):
var urlKMLClient = 'KMLClientsAll.kml';
var layerKMLClient = new OpenLayers.Layer.Vector("Clients", {
strategies: [new OpenLayers.Strategy.Fixed(), new OpenLayers.Strategy.Cluster(), refresh],
protocol: new OpenLayers.Protocol.HTTP({
url: urlKMLClient,
format: new OpenLayers.Format.KML({
extractStyles: true,
extractAttributes: true,
maxDepth: 2
})
})
});
请参阅下面的客户端自定义图标(绿色标记)让位于集群默认图标(黄色磁盘)