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

MATLAB Discussion :

Déplacer des objets en temps réel avec la souris.


Sujet :

MATLAB

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    81
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 81
    Points : 56
    Points
    56
    Par défaut Déplacer des objets en temps réel avec la souris.
    Bonjour,

    Je souhaiterai savoir s'il était possible d'utiliser matlab pour effectuer une rotation d'un objet en temps-réel à l'aide de la souris.
    En fait j'aimerai faire en sorte que l'utilisateur puisse effectuer manuellement une rotation arbitraire d'un objet à l'aide de la souris. J'ai compris le principe de la rotation en 3D avec rotate3D, par contre j'aimerai bien pour obtenir plus de libertés et le faire moi-même, un peu comme lorsque l'on change l'angle de la caméra manuellement sous matlab.

    Merci pour vos réponses.

  2. #2
    Rédacteur/Modérateur

    Avatar de Jerome Briot
    Homme Profil pro
    Freelance mécatronique - Conseil, conception et formation
    Inscrit en
    Novembre 2006
    Messages
    20 302
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Freelance mécatronique - Conseil, conception et formation

    Informations forums :
    Inscription : Novembre 2006
    Messages : 20 302
    Points : 52 884
    Points
    52 884
    Par défaut
    Citation Envoyé par johnnyjohnny
    un peu comme lorsque l'on change l'angle de la caméra manuellement sous matlab.
    Justement, quel est le problème avec l'outil camera ?
    Ingénieur indépendant en mécatronique - Conseil, conception et formation
    • Conception mécanique (Autodesk Fusion 360)
    • Impression 3D (Ultimaker)
    • Développement informatique (Python, MATLAB, C)
    • Programmation de microcontrôleur (Microchip PIC, ESP32, Raspberry Pi, Arduino…)

    « J'étais le meilleur ami que le vieux Jim avait au monde. Il fallait choisir. J'ai réfléchi un moment, puis je me suis dit : "Tant pis ! J'irai en enfer" » (Saint Huck)

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    81
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 81
    Points : 56
    Points
    56
    Par défaut
    Merci pour ta réponse, mais j'ai fait une erreur dans mon post précédent, j'ai cité rotate3d mais je voulais parler en fait de rotate. En effet, rotate3d permet d'utiliser la souris, mais cela ne change que le point de vue, pas les coordonnées de l'objet comme dans rotate.
    Les outils du "camera toolbar" me permettent-ils de faire des rotations sur un objet parmis plusieurs dans une figure ? j'ai essayé les outils, mais je n'ai pas réussi à effectuer une rotation sur un objet, seulement changer l'orientation de la caméra.

  4. #4
    Membre du Club
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    81
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 81
    Points : 56
    Points
    56
    Par défaut
    J'ai fini par trouver en gros comment faire : il faut utiliser les callbacks pour les évenements suivants : WindowButtonDownFcn (click sur le bouton), WindowButtonMotionFcn (mouvement de la souris), WindowButtonUpFcn (relachement du bouton).
    Pour faire un drag & drop on capte successivement les évenements WindowButtonDownFcn et WindowButtonMotionFcn, en vérifiant que WindowButtonUpFcn ne précède pas WindowButtonMotionFcn. C'est dans le callback de WindowButtonMotionFcn qu'on effectue la rotation.

    Plusieurs problèmes peuvent se poser alors, comme par exemple comment gérer le sens de déplacement de la souris.

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    81
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 81
    Points : 56
    Points
    56
    Par défaut
    J'ai plus ou moins réussi à coder quelque chose qui marche à peu près, en tout cas ça me convient suffisamment pour ce que j'ai à faire. Je l'ai posté sur mathworks pour que l'on puisse me signaler les bugs ou les choses mal gérées. J'essayerai de l'améliorer si j'ai le temps.

    Le massacre : mrotate

    Pour déplacer des objets en 2D (le code dont je me suis très largement inspiré) : draggable

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Modélisation des application temp réel avec SART et HOOD
    Par foufou.mr dans le forum Autres langages
    Réponses: 0
    Dernier message: 08/03/2013, 10h37
  2. Communication "temps réel" avec un objet
    Par Jean-Philippe André dans le forum Débuter
    Réponses: 69
    Dernier message: 09/03/2012, 18h07
  3. Déplacer des objets dans un JPanel
    Par hammag dans le forum AWT/Swing
    Réponses: 6
    Dernier message: 23/03/2006, 11h13
  4. Réponses: 7
    Dernier message: 27/01/2006, 01h44
  5. Informatique temps réel avec VxWorks
    Par Mastero dans le forum C++
    Réponses: 3
    Dernier message: 02/09/2005, 22h08

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