私はWebGLアプリケーションを開発しています。たとえば、ズームイン/アウトに軌道コントロールを使用する球体があります。イベントをマウスホイールでトリガーする方法は?
今、マウスホイールのイベントを設定します。現在のWebGLブロックに対応するマップ位置をズームインすると、マップとWebGLのズームイン/ズームアウト(インラインブロック使用)が可能です。しかし問題は、私がマウスホイールを使うと、まずイベントが引き起こされていることです。私はまた、私のイベントロジックが正しいかどうかを知りたい。
root.addEventListener('mousewheel', mousewheel, false);
function mousewheel(event) {
var mX = (event.wheeldetailX/width)* 2 - 1;
var mY = (event.wheeldetailY/height)* 2 + 1;
var WebGLZoom = new THREE.Vector3(mX, mY, 1);
var raycaster = new THREE.Raycaster();
raycaster.setFromCamera(WebGLZoom, camera);
WebGLZoom.sub(camera.position);
var mapzoom = map.getZoom();
if (WebGLZoom.z <= 5 && WebGLZoom.z > 2) {
map.setZoom(17);
} else if (WebGLZoom.z <= 2 && WebGLZoom.z > 0.0) {
map.setZoom(19);
} else {
map.setZoom(14);
}
}
標準イベントは 'wheel'です。 – zeroflagL
Googleがお手伝いします:[* HTML5ページ*のマウスホイールイベントの使い方*](http://www.sitepoint.com/html5-javascript-mouse-wheel/)? :p –
マウスホイールの代わりにホイールを使うことができますか? – sravan