3d中獲取對象包圍盒 位置的常用方法

// 獲取對象的包圍盒 getObjboundsById(objId){ var box = new THREE.Box3(); var bounds = new THREE.Box3(); var instanceTree = viewer.model.getData().instanceTree; var fragList = viewer.model.getFragmentList(); box.makeEmpty(); bounds.makeEmpty(); instanceTree.enumNodeFragments(objId, function (fragId) { fragList.getWorldBounds(fragId, box); bounds.union(box) }, true) return bounds } // 獲取中心位置 getObjPosition(dbId){ var bound = vmethods.getObjboundsById(dbId); var posx = (bound.max.x + bound.min.x) / 2; var posy = (bound.max.y + bound.min.y) / 2; var posz = (bound.max.z + bound.min.z) / 2; var pos = { x:posx, y:posy, z:posz } return pos; }
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章