Skip to content

Commit 78b653e

Browse files
committed
We do the line-picking in local space.
1 parent 000ae09 commit 78b653e

File tree

1 file changed

+6
-6
lines changed

1 file changed

+6
-6
lines changed

src/core/Raycaster.js

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -353,20 +353,20 @@
353353

354354
for ( var i = 0; i < nbVertices - 1; i = i + step ) {
355355

356-
localRay.distanceSqToSegment( vertices[ i ], vertices[ i + 1 ], interRay, interSegment );
357-
interSegment.applyMatrix4( object.matrixWorld );
358-
interRay.applyMatrix4( object.matrixWorld );
356+
var distSq = localRay.distanceSqToSegment( vertices[ i ], vertices[ i + 1 ], interRay, interSegment );
359357

360-
if ( interRay.distanceToSquared( interSegment ) <= precisionSq ) {
358+
if ( distSq <= precisionSq ) {
361359

362-
var distance = raycaster.ray.origin.distanceTo( interRay );
360+
var distance = localRay.origin.distanceTo( interRay );
363361

364362
if ( raycaster.near <= distance && distance <= raycaster.far ) {
365363

366364
intersects.push( {
367365

368366
distance: distance,
369-
point: interSegment.clone(),
367+
// What do we want? intersection point on the ray or on the segment??
368+
// point: raycaster.ray.at( distance ),
369+
point: interSegment.clone().applyMatrix4( object.matrixWorld ),
370370
face: null,
371371
faceIndex: null,
372372
object: object

0 commit comments

Comments
 (0)