Bonjour,
Voilà j'aimerais pouvoir déplacer la caméra dans le plan 'seulement x et y, en se servant de la souris: C'est à dire quand on clique on peut déplacer horizontalement et verticalement.
J'ai essayé ce code mais ça ne marche pasQuelqu'un pourrait aurait une idée?
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 EVT_LEFT_DOWN(Viewer::OnLeftMouse) EVT_LEFT_UP(Viewer::OnLeftMouseUp) EVT_MOTION(Viewer::OnMouseMove) double depX, depY; long Xcoord, Ycoord, X, Y; int MouseButton = 0; depX = depY = 0; void Viewer::OnLeftMouse(wxMouseEvent& event) { MouseButton = 1; event.GetPosition(&Xcoord, &Ycoord); } void Viewer::OnLeftMouseUp(wxMouseEvent& event) { MouseButton = 0; } void Viewer::OnMouseMove(wxMouseEvent& event) { if (event.Dragging() == true) { event.GetPosition(&X, &Y); if(MouseButton ==1) { depX = depX + (GLfloat)(X - Xcoord); depY = depY + (GLfloat)(Y - Ycoord); Xcoord = X; Ycoord = Y; glTranslatef(X, Y, 0); } Draw(); } }
Partager