Salut, j'ajoute un MouseBehavior a mon SimpleUniverse mais ca ne fonctionne pas comma prévu, je me demandais si quelqu'un saurait m'expliquer mon erreur...

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
public class MouseBeh extends Behavior{
        private TransformGroup TG;
	private Transform3D rot=new Transform3D();
	private Transform3D rotation=new Transform3D();
	private Vector3f translation=new Vector3f();
 
	private WakeupOnAWTEvent mouseEvent=new WakeupOnAWTEvent(MouseEvent.MOUSE_MOVED);
	private MouseEvent evt;
        private Robot rr;
	MouseBeh(TransformGroup TG)
	{
		this.TG=TG;
                try{
                    rr = new Robot();
                }catch(Exception e){
                    javax.swing.JOptionPane.showMessageDialog(null, "Erreur: " + e.getMessage() + " -- " + e.getCause());
                }
	}
 
	public void initialize()
	{
		this.wakeupOn(mouseEvent);
	}
 
	public void processStimulus(Enumeration criteria)
	{
		AWTEvent events[]=mouseEvent.getAWTEvent();
		rot.setIdentity();
		TG.getTransform(rotation);
		evt = (MouseEvent)events[0];
 
                //Formule bidon, juste pour avoir un résultat quelconque
		rot.rotX(Math.toRadians(evt.getXOnScreen()-500)/200);
                rot.rotY(Math.toRadians(evt.getYOnScreen()-500)/200);
 
                try{
                    rr.mouseMove(500, 500);
                }catch(Exception e){
                    javax.swing.JOptionPane.showMessageDialog(null, "Erreur: " + e.getMessage() + " -- " + e.getCause());
                }
 
		rotation.mul(rot);
		TG.setTransform(rotation);
 
		this.wakeupOn(mouseEvent);
	}
    }