【发布时间】:2019-01-29 20:12:22
【问题描述】:
我可以在 3D 视图中获取带边界框的位置,但在 2D 视图中无法获取正确的位置。
获取边界框的代码如下。
得到边界框后,我计算并得到框的中心点。 当我将此代码用于从 Revit 导入的 2D 视图时,我得到一个错误的值。
获取二维对象位置的正确方法是什么?
static getWorldBoundingBox(model, dbId) {
return new Promise(async (resolve, reject) => {
try {
var fragIds = await ViewerToolkit.getFragIds(model, dbId);
if (!fragIds.length) {
return reject('No geometry, invalid dbId?');
}
var fragList = model.getFragmentList();
var fragbBox = new THREE.Box3();
var nodebBox = new THREE.Box3();
fragIds.forEach(function(fragId) {
fragList.getWorldBounds(fragId, fragbBox);
nodebBox.union(fragbBox);
});
return resolve(nodebBox);
} catch (ex) {
return reject(ex);
}
});
}
【问题讨论】:
标签: autodesk-forge