我使用RvtVa3c从Revit导出的json模型。我使用ObjectLoader将模型添加到场景中。
var loader = new THREE.ObjectLoader(manager);
loader.load( 'mesa.js', function ( object ) {
scene.add(object);
}
然后我试了两个......
// From Va3cViewer.js
var raycaster = new THREE.Raycaster( camera.position, vector.sub( camera.position ).normalize() );
var intersects = raycaster.intersectObjects( targetList );
和...
// From three js example code
// have onMouseMove event and raycaster initialized elsewhere in the code
raycaster.setFromCamera( mouse, camera );
var intersects = raycaster.intersectObjects( scene.children );
两者都没有发现任何相交。我已经读过一篇关于在尝试查找交叉之前调用几何上的computeFaceNormals()的帖子,但是在我调试代码时没有子项具有几何。有没有办法找到与object3d的交叉?请帮忙。非常感谢提前。
来源here。
答案 0 :(得分:1)
刚刚找到这个post。
添加“true”的第二个参数似乎可以解决问题。
var intersects = raycaster.intersectObjects( targetList, true );