use*_*259 3 javascript kml openlayers
我成功地从Openlayers写了一个KML,但kml文件中没有样式(颜色,笔画等).是否可以使用样式生成KML?
我在这里找到了类似的问题:https: //gis.stackexchange.com/questions/17031/openlayers-format-kml-write-style
提前致谢.
由于还没有写方法不利用的'extractStyles':true,特性,你可以看到在这里.只有READ方法才有.
我看到的唯一方法就是重新创建它们.在下面的示例中,我创建了我想要的KML样式,并将其注入openlayers创建的kml字符串.
myorg.Util.GetKMLFromFeatures = function (features, strfolderName, strfolderDescription) {
var format = new OpenLayers.Format.KML({
'maxDepth': 10,
'extractStyles': true,
'internalProjection': myorg.UI.Map.getMap().baseLayer.projection,
'externalProjection': myorg.UI.Map.Projections.Geographic
});
var kmlStyle = "<Style id='OutlineOnlyStyle'><PolyStyle><color>ff0000cc</color><fill>0</fill><outline>1</outline></PolyStyle></Style>";
format.foldersName = strfolderName;
format.foldersDesc = strfolderDescription;
//add style description
var kml = format.write(features).replace(/<Folder>/g, '<Folder>' + kmlStyle)
.replace(/><name>/g, '><styleUrl>#OutlineOnlyStyle</styleUrl><name>');
return kml;
};
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1632 次 |
| 最近记录: |