繁体   English   中英

three.js:边界框的奇怪行为

[英]three.js: bounding box strange behaviour

我正在使用three.js ,但我发现有些东西无法正常运行。 在我的应用程序中,我定义了一个多维数据集及其边界框:

var scene = new THREE.Scene();
var geometry = new THREE.BoxGeometry( 1, 1, 1 );
var material = new THREE.MeshPhongMaterial({color: 0xbaf5e8, flatShading: true});
var cube = new THREE.Mesh( geometry, material );
cube.receiveShadow = true;
scene.add(cube);
var helper_bbox = new THREE.BoxHelper(cube);
helper_bbox.update();
scene.add(helper_bbox);

当我尝试访问计算的边界框( helper_bbox.geometry.boundingBox )时,我注意到它的值为null ,尽管它在屏幕上已完美呈现。 但是,边界球( helper_bbox.geometry.boundingSphere )是可以访问的。

我不知道为什么会这样。 有人对此有任何想法吗? 我应该明确调用任何方法来检索边界框的点的坐标吗? 谢谢。

除非其他内部方法要求使用几何边界框,否则它们不会自动计算。 您可以强制计算框-并检查它-像这样:

object.geometry.computeBoundingBox();

console.log( object.geometry.boundingBox );

three.js r.87

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM