我正在尝试在OpenLayers 2.12中添加自定义测量单位。默认情况下,OpenLayers中提供的所有内容均为:
displaySystemUnits: {
geographic: ['dd'],
english: ['mi', 'ft', 'in'],
metric: ['km', 'm'],
}
我希望能够扩展这个并添加一个自定义的,仅以英里为单位进行测量。例如,如果测量值小于1英里(例如半英里),则将其显示为0.5。
我不想通过添加以下内容来编辑实际的OpenLayers Measurement.js,因为它不可扩展以用于将来的升级:
myCustomUnits: ['mi', 'mi']
我有什么想法可以扩展OpenLayers以实现上述目标吗?
由于 迪米特里奥斯
答案 0 :(得分:1)
实际上已经找到了使用以下代码覆盖displaySystemUnits的方法:
OpenLayers.Control.Measure.prototype.displaySystemUnits = {
geographic: ['dd'],
english: ['mi', 'ft', 'in'],
metric: ['km', 'm'],
myCustomUnits: ['mi', 'mi']
};