Como añadir Zoom de rueda en java3d

andresmuras
29 de Octubre del 2008
Hola amigos, estoy liado con un proyectillo sobre java3d y me he empapado de los tutoriales de la web, apis de java y demas. Pero hay algo que no consigo. Sobre un objeto 3D consigo hacerlo girar haciendo click y arrastrandolo asi como pinchar en diferentes partes del objeto para que ocurran cosas especificas. Pero no se como hacer para que simplemente tocando la rueda hacia arriba o hacia abajo(no su boton) realice un zoom mas o un zoom menos sobre el escenario grafico completo. Sabeis como añadir esto en codigo? he visto que hay una clase mousewheelzoom pero no se como usarla... Si me podeis echar una mano los mas avanzados... Muchas gracias!

aligator
29 de Octubre del 2008
Tambien hay una clase MouseZoom en Java3D q te puede ser util, si queres indicame como tienes tu codigo a ver que manito te podemos hechar

Andresmc
29 de Octubre del 2008
Bueno, tengo creada una clase (que extiende a behavior) en donde programa el funcionamiento del raton para mi escenario 3d, es decir, creo funcion al hacer click, al arrastrar e incluso al mover. Lo tengo puesto asi

mouseEvents = new WakeupCriterion[3];

mouseEvents[0] = new WakeupOnAWTEvent(MouseEvent.MOUSE_DRAGGED);
mouseEvents[1] = new WakeupOnAWTEvent(MouseEvent.MOUSE_PRESSED);
mouseEvents[2] = new WakeupOnAWTEvent(MouseEvent.MOUSE_MOVED);

mouseCriterion = new WakeupOr(mouseEvents);
wakeupOn (mouseCriterion);


...
y luego abajo miro cada caso y lo programo con o que quiera hacer. Pero no he conseguido (si en otros ejemplos tontos) añadir algun evento de zoom.

Andresmc
29 de Octubre del 2008
Lo ideal seria que existiera un mouseevent de "rueda de raton hacia arriba pulsada" y otro al reves... pero creo que eso no se puede, ya que los mouseevents se limitan a saber cuando se pulsa, se arrastra, se clickea, se mueve... y no se si puedo especificar boton/ruleta para completar la tabla de eventos esta.
Gracias!

aligator
29 de Octubre del 2008
Hola , claro que se puede obtener el evento de scroll del mouse.. checka este link, allí hay una clase muy buena que te permite capturar los eventos de scroll hacia arriba y hacia abajo del mouse

http://www.java2s.com/Code/Java/Event/MouseWheelEventDemo.htm