#1
09-12-2009 15:07:07
- Ilovechocolat
- Membres
- Date d'inscription:
- Messages: 125
- IP: 90.14.248.61
- Courriel
Bonjour a tous !
Je voudrait réaliser une caméra trackball comme ici.
Le problème c'est que dans ce tuto, il utilise des motionSensivity et autre.
Moi je n'ai droit qu'a la position de la souris et le bouton pressé (en fait j'utilise Qt).
Si vous voulez plus d'information sur les évents que j'utilise, voici la class que j'utilise : QMouseEvent.
Je peut aussi récupérer l'emplacement de la caméra.
Hors ligne
#2
ou ( Dx , Dy ) = ( Px , Py ) - ( P0x,P0y )
(Px,Py) = position courante du pointeur ;
(P0x,P0y) = position du pointeur lors de la pression du bouton gauche ;
en coordonnées normalisée ( ie entre 0 et 1 ).
C'est un ébauche pour avior une idée.
Apres pour faire un truc plus souple tu peux faire intervenir la vitesse de deplacement du pointeur , corrigée le probleme aux pôles , changer la vitesse de rotation ....
09-12-2009 16:13:22
- firnafin
- Membres

- Date d'inscription:
- Messages: 150
- IP: 93.9.158.138
- Courriel
un truc du style :
if( "bouton souris gauche pressé" == 1){
cam->setPosition(" le centre de mon objet" +
irr::core::vector3df( r*cos( Pi/2*Dy)*cos( Pi*Dx) ;
r*sin( Pi/2*Dy) ;
r*cos( Pi/2*Dy)*sin( Pi*Dx) );
cam->setTarget( " le centre de mon objet " ) ;
}ou ( Dx , Dy ) = ( Px , Py ) - ( P0x,P0y )
(Px,Py) = position courante du pointeur ;
(P0x,P0y) = position du pointeur lors de la pression du bouton gauche ;
en coordonnées normalisée ( ie entre 0 et 1 ).
C'est un ébauche pour avior une idée.
Apres pour faire un truc plus souple tu peux faire intervenir la vitesse de deplacement du pointeur , corrigée le probleme aux pôles , changer la vitesse de rotation ....
Hors ligne



