我如何启用Line2 raycast

时间:2018-03-20 18:10:31

标签: line raycasting

我正在使用来自three.js 91版本的胖线示例。 我发现raycating无法识别物体交叉点。

早期的THREE.Line能够识别线路交叉点,请给我指导解决问题。

谢谢。

1 个答案:

答案 0 :(得分:1)

作为覆盖Line2.js中的光线投射功能的@eswar-reddy解决方案的扩展,以便与instanceStart一起使用。以下是我要更改的代码片段:

if ( geometry.isBufferGeometry ) {

            var index = geometry.index;
            var attributes = geometry.attributes;
            var positions = attributes.position.array;

            if ( index !== null ) {

                var indices = index.array;

                for ( var i = 0, l = indices.length - 1; i < l; i += step ) {

                    var a = indices[ i ];
                    var b = indices[ i + 1 ];

                    vStart.fromArray( positions, a * 3 );
                    vEnd.fromArray( positions, b * 3 );