orbitControlsを3js(r84)で使用するシーンがあり、レイキャスティングのためにマウスイベントを追加したいと思います。関数は機能しますが、私は両方のイベントを呼び出すことはできません。彼らは私が他をオフにする場合にのみ動作します。私のinit関数内3jsは軌道制御でマウスイベントを追加します
私は
controls = new THREE.OrbitControls(cameraB1, rendererB1.domElement);
controls.addEventListener('change', render);
controls.enableZoom = true;
controls.enableRotate= false;
controls.addEventListener('mousedown',myOnMouseDownFunction ,false);
controls.update();
を持っている機能は、私は軌道や私の関数を呼び出すので、どちらか
function myOnMouseDownFunction(evt) {
evt.preventDefault();
var array = getMousePosition(contB1, evt.clientX, evt.clientY);
onClickPosition.fromArray(array);
var intersects = getIntersects(onClickPosition, sceneB1.children);
if (intersects.length > 0 && intersects[ 0 ].uv) {
var uv = intersects[ 0 ].uv;
console.log(uv);
}
console.log("I am being called");
}
を呼び出す必要があります。私に何ができる?私を助けてください。
本の作業用コピーはこちらをhttp://cb.uu.se/~lesso657/3D/first.htmlことができますコードを確認してください –
domエレメントのaddイベントリスナーで "controls.addEventListener"を変更しました。しかしそれは以前は機能していなかったので、ThreeJSコントロールにイベントリスナーを追加できるかどうかを確認したかったのです。 –
あなたは両方とも働きたいですか? – Tlatis