IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

OpenGL Discussion :

Limiter les déplacement de la souris a la fenetre


Sujet :

OpenGL

  1. #1
    Membre expérimenté
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2004
    Messages
    1 184
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Avril 2004
    Messages : 1 184
    Points : 1 745
    Points
    1 745
    Par défaut Limiter les déplacement de la souris a la fenetre
    Bonjour,

    y-a-til un moyen de limiter le déplacement de la souris a la fenetre ?
    sans faire un truc du style

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    si souris.x <0 alors
       souris.x=0
    finsi
    j'utilise SDL, opengl et glu avec c++

    merci

  2. #2
    Membre chevronné Avatar de Jbx 2.0b
    Homme Profil pro
    Développeur C++/3D
    Inscrit en
    Septembre 2002
    Messages
    476
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur C++/3D
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2002
    Messages : 476
    Points : 1 787
    Points
    1 787
    Par défaut
    ouais y a moyen avec les fonctions

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    int mouse_x, mouse_y;
    SDL_GetMouseState(&mouse_x, &mouse_y);
    qui te permet de connaitre la position actuelle de ton pointeur
    et
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    void SDL_WarpMouse(Uint16 x, Uint16 y);
    te permet de spécifier une nouvelle position

  3. #3
    Membre expérimenté
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2004
    Messages
    1 184
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Avril 2004
    Messages : 1 184
    Points : 1 745
    Points
    1 745
    Par défaut
    ouhai
    mais la il faut quand même tester la position de la souris
    une fonction qui la fixe automatiquement
    ou qui délimite un fois pour toute, un réctangle qu'elle ne pe pas dépasser ?

  4. #4
    Membre chevronné Avatar de Jbx 2.0b
    Homme Profil pro
    Développeur C++/3D
    Inscrit en
    Septembre 2002
    Messages
    476
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur C++/3D
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2002
    Messages : 476
    Points : 1 787
    Points
    1 787
    Par défaut
    a excuse j'avais mal lu ta question... Sinon je crois pas SDL est plutot bas niveau elle te donne pas ce genre de fonctions. Le mieux est de la faire soit même, avec les fonctions que je t'ai donné et des constantes( ou #DEFINE) qui donnent la taille de l'écran ou la zone ou tu veu delimiter.
    pas d'autre idée désolé, ou peut être avec d'autres lib (j'ai entendu parler de SxDL, qui est + haut niveau que SDL, qui te permet peut-être de faire ce genre de truc)

  5. #5
    Rédacteur
    Avatar de bafman
    Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2003
    Messages
    2 574
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Novembre 2003
    Messages : 2 574
    Points : 5 323
    Points
    5 323
    Par défaut
    je ne pense pas que ce soit possible... en tout cas pas avec la SDL...

  6. #6
    Membre expérimenté
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2004
    Messages
    1 184
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Avril 2004
    Messages : 1 184
    Points : 1 745
    Points
    1 745
    Par défaut
    domage
    et avec des test de position
    au niveau rendu c propre
    ou on voit la soris qui sacade lorsq'elle essaye de sortir de la fenetre?

  7. #7
    Membre chevronné Avatar de Jbx 2.0b
    Homme Profil pro
    Développeur C++/3D
    Inscrit en
    Septembre 2002
    Messages
    476
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur C++/3D
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2002
    Messages : 476
    Points : 1 787
    Points
    1 787
    Par défaut
    normalement pas de probléme, essaye toujours, si ça marche mal montre nous ton code, on trouvera peut-être l'erreur. Sinon je te conseil les programmes donnés avec SDL, il te montre plusieurs cas de gestion de la souris, y a peut de chose a changer pour arriver à ce que l'on veut.

  8. #8
    Membre expérimenté
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2004
    Messages
    1 184
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Avril 2004
    Messages : 1 184
    Points : 1 745
    Points
    1 745
    Par défaut
    OK, merci beaucoup

  9. #9
    Membre averti Avatar de Bob.Killer
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    336
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 336
    Points : 332
    Points
    332
    Par défaut
    Excusez moi mais je comprend pas le but de cette manip ???

  10. #10
    Membre expérimenté
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2004
    Messages
    1 184
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Avril 2004
    Messages : 1 184
    Points : 1 745
    Points
    1 745
    Par défaut
    je veut q'un mouvement (rotation de caméra par exemple)
    s'effectue lorsque la souris bute contre un bord de l'écran
    voila

    sinon ptite question
    pour changer la tete du pointeur de souris
    ya une fonction
    ou on le masque et on lui cole une image 2d dessus ?

  11. #11
    Membre chevronné Avatar de Jbx 2.0b
    Homme Profil pro
    Développeur C++/3D
    Inscrit en
    Septembre 2002
    Messages
    476
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur C++/3D
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2002
    Messages : 476
    Points : 1 787
    Points
    1 787
    Par défaut
    bah imagine un jeu de stratégie par exemple, ça peut être embetant si le curseur sort de l'écran et qui se retrouve à perpette. Et il y a plein d'autre cas ou se genre de manip peut servir

  12. #12
    Membre averti Avatar de Bob.Killer
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    336
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 336
    Points : 332
    Points
    332
    Par défaut
    et pk par faire le test pour voir si la souris dépasse de l écran un petit if n a jamais fait de mal ??!!???

    Bof si c pour de l optimization c moyen là

    Sinon oui en openGL tu as une fonction pour changer l aspect du curseur

    SetCursor() (pi etre me souviens pu très bien lol)

  13. #13
    Membre expérimenté
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2004
    Messages
    1 184
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Avril 2004
    Messages : 1 184
    Points : 1 745
    Points
    1 745
    Par défaut
    Citation Envoyé par Bob.Killer
    et pk par faire le test pour voir si la souris dépasse de l écran un petit if n a jamais fait de mal ??!!???
    mes profs m'ont toujours dit qu'un bon informaticien est une feignasse
    alors
    comme tout bon élève

    j'applique lol !!

    et pis faut pas réinventer la roue

  14. #14
    Membre averti Avatar de Bob.Killer
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    336
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 336
    Points : 332
    Points
    332
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    #define GLUT_CURSOR_INFO		2
    #define GLUT_CURSOR_DESTROY	3
    #define GLUT_CURSOR_HELP		4
    #define GLUT_CURSOR_CYCLE		5
    #define GLUT_CURSOR_SPRAY		6
    #define GLUT_CURSOR_WAIT		7
    #define GLUT_CURSOR_TEXT		8
    #define GLUT_CURSOR_CROSSHAIR	9
     
    et 
     
    extern void APIENTRY glutSetCursor(int cursor);

  15. #15
    Membre averti Avatar de Bob.Killer
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    336
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 336
    Points : 332
    Points
    332
    Par défaut
    lol oki tu m as bien eut

  16. #16
    Membre expérimenté
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2004
    Messages
    1 184
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Avril 2004
    Messages : 1 184
    Points : 1 745
    Points
    1 745
    Par défaut
    Snif j'utilise pas glut

  17. #17
    Membre averti Avatar de Bob.Killer
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    336
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 336
    Points : 332
    Points
    332
    Par défaut
    sinon y a un truc très simple à faire pour avoir un beau curseur c que tu met une image à la place et comme ça tu fais comme bon te semble

  18. #18
    Membre chevronné Avatar de Jbx 2.0b
    Homme Profil pro
    Développeur C++/3D
    Inscrit en
    Septembre 2002
    Messages
    476
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur C++/3D
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2002
    Messages : 476
    Points : 1 787
    Points
    1 787
    Par défaut
    avec SDL y a
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    SDL_Cursor *SDL_CreateCursor(Uint8 *data, Uint8 *mask, int w, int h, int hot_x, int hot_y);
    je te conseil http://www.libsdl.org/docs.php -> sdldoc-html.zip c'est trés bien fait et sa t'explique de A à Z comment crée ton curseur.

  19. #19
    Membre expérimenté
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2004
    Messages
    1 184
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Avril 2004
    Messages : 1 184
    Points : 1 745
    Points
    1 745
    Par défaut
    ouhai mais ca a pas l'air d'etre une récente version

  20. #20
    Rédacteur
    Avatar de bafman
    Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2003
    Messages
    2 574
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Novembre 2003
    Messages : 2 574
    Points : 5 323
    Points
    5 323
    Par défaut
    pour changer le curseur de la souris le moyen le plus portable et qui permet de faire réellement ce que tu veut (blending, alpha test et autres effets), c'est de faire disparaitre le curseur et d'afficher une image en mode ortho a la place...

Discussions similaires

  1. [SFML 1.6] Ignorer les déplacements souris.
    Par SirXido dans le forum SFML
    Réponses: 3
    Dernier message: 14/03/2016, 09h29
  2. carte en php, problème pour les limites de déplacement
    Par fartounet dans le forum Langage
    Réponses: 4
    Dernier message: 15/02/2008, 09h48
  3. Limiter les 30dernière liste de données?
    Par SkyDev dans le forum Langage SQL
    Réponses: 11
    Dernier message: 08/03/2004, 17h01
  4. Limiter le déplacement de la souris
    Par el_bouleto dans le forum C++Builder
    Réponses: 4
    Dernier message: 08/11/2002, 23h56
  5. Comment limiter les mouvements du curseur??
    Par scorpiwolf dans le forum C++Builder
    Réponses: 9
    Dernier message: 07/07/2002, 22h09

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo