forge里根據elid找dbid

利用instanceTree倒推退出dbId /** * elid轉換dbid * @param elIds {Array} * @returns dbIds {Array} */ elIdToDbId(elIds){ let itNodeAccess = this.viewer.model.getData().instanceTree.nodeAccess; let dbIds=[]; elIds.forEach(elId=>{ let elIdIndex = itNodeAccess.nameSuffixes.indexOf(elId); let dbId = this.findKeyByValue(elIdIndex,itNodeAccess.dbIdToIndex); dbIds.push(dbId) }) return dbIds; } /** * * @param value value 值 * @param data 對象 * @param compare * @returns {string} 對象的key */ findKeyByValue (value,data, compare = (a, b) => a === b) { return Object.keys(data).find(k => compare(data[k], value)) }
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章