2016-09-02 10 views
0

Raycast.set()をキャストするときに交差を検出する際に問題があります。 Raycast.setFromCamera()メソッドを使用すると、すべてが機能します。threeJS Raycaster.set()が交差を検出しない

var mesh = 'some mesh'; 

var raycast = new THREE.Raycaster(); 
var from = new THREE.Vector3(0, 0, 300); 
var to = new THREE.Vector3(0, -100, 300); 
raycast.set(from, to); 

var intersection = raycast.IntersectObject(mesh); 
if(intersection.lenght < 0) { 
    alert('Intersection!'); 
} 

アム私が何か間違ったこと:ここで

は、私のコードのビットがありますか?光線はメッシュと確実に交差していますが、ArrowHelperを使用して確実に確認していますが、常に0の交点を取得します。

+0

'IntersectObject'と' lenght'の両方が綴られています違う。このコードは実行しないでください。 Javascriptコンソールにエラーがありますか?それは 'intersectObject'と' length'でなければなりません –

答えて

1

それは

raycaster.set(origin, direction); 

directionが正規化されなければならないVector3である、つまり、1

に等しい長さを持っているあなたはそうのようなVector3を正規化することができます

vector.normalize(); 

three.js r.80

+0

ありがとう、それは働いた:) – marek

関連する問題