import store from "../../../store";
|
const mapInfo = {
|
listArr: [
|
'桩号_Point',
|
],
|
mssageInfo: null,
|
propertyNames: null,
|
Init(html) {
|
|
if (!html) return;
|
var xmlDoc = this.getXMLNode(html)
|
if (xmlDoc.length == 0) return
|
this.showMapInfo(xmlDoc);
|
|
},
|
setRestLayer() {
|
store.state.showZhaiHaiImg = null;
|
store.state.isshowZhaiHai = false;
|
store.state.showMessageInfo = false;
|
this.mssageInfo = null;
|
store.state.isShowImgUpDate = false;
|
store.state.isShowImgUrl = null;
|
this.propertyNames = null;
|
store.state.isireamUrl = null;
|
store.state.isShowMenuCount = false;
|
|
},
|
setTileSetInfo(res) {
|
var propertyNames = res.getPropertyIds();
|
if(!propertyNames || propertyNames.length<=0)return;
|
this.setRestLayer();
|
var val = [];
|
for(var i = 0; i <propertyNames.length;i++){
|
var name= propertyNames[i]
|
var obj = {
|
name: name,
|
value: res.getProperty(name)
|
}
|
val.push(obj)
|
}
|
this.showMapInfo(val);
|
},
|
setGeoJsonInfo(res) {
|
if (res.projectId && res.frameNo) {
|
this.setRestLayer();
|
store.state.showZhaiHaiImg = res;
|
store.state.isshowZhaiHai = true;
|
} else if (res.sourceType && res.sourceType._value == "imgUp") {
|
this.setRestLayer();
|
|
setTimeout(() => {
|
store.state.isShowImgUrl = res._path._value;
|
store.state.isShowImgUpDate = true;
|
}, 100);
|
|
} else {
|
var val_name = res._propertyNames;
|
this.propertyNames = res._propertyNames;
|
var val = [];
|
var enName = ['ZH', 'HY', 'YH', 'HZ', 'Lh', 'R', 'QZ', 'CORNER', 'SL', 'WIDEN']
|
var cnName = [
|
'前缓和曲线起点',
|
'圆曲线起点',
|
'圆曲线止点',
|
'后缓和曲线止点',
|
'缓和曲线长度',
|
'平曲线半径',
|
'圆曲线中心点',
|
'转角',
|
'超高值',
|
'加宽值'
|
|
]
|
for (var i = 0; i < val_name.length; i++) {
|
var name = val_name[i]
|
if (enName.indexOf(name) > -1) {
|
name = cnName[enName.indexOf(name)]
|
}
|
var obj = {
|
name: name,
|
value: res[val_name[i]]._value,
|
}
|
val.push(obj)
|
}
|
|
this.showMapInfo(val);
|
}
|
},
|
showMapInfo(res) {
|
this.setRestLayer();
|
setTimeout(() => {
|
this.mssageInfo = res;
|
store.state.showMessageInfo = true;
|
}, 100);
|
},
|
getXMLNode(html) {
|
let str = html;
|
//创建文档对象
|
let xmlDoc = new DOMParser().parseFromString(str, "text/xml");
|
let finds = xmlDoc.getElementsByTagName('Featureinfo');
|
var val = []//获取find节点
|
for (let i = 0; i < finds.length; i++) { //循环节点
|
let finder = finds[i];
|
this.getfun(finder, val);
|
}
|
return val
|
},
|
getfun(res, val) {
|
var child = res.childNodes;
|
for (var i = 0; i < child.length; i++) {
|
var node = child[i].childNodes;
|
if (node.length > 1) {
|
this.getfun(child[i], val)
|
} else {
|
val.push({
|
name: child[i].nodeName,
|
value: child[i].childNodes[0].nodeValue
|
})
|
}
|
|
}
|
return val;
|
}
|
|
}
|
export default mapInfo;
|