Partage
  • Partager sur Facebook
  • Partager sur Twitter

SFML-positions souris

    5 février 2019 à 18:34:59

    Coucou à tous!

    Je commence à créer un petit jeux en C++/SFML, j'ai déjà 2-3 Bases Comme un perso qui bouge grâce au clavier, un système TRÈSprimitif de Map, et même un début de collision... Mais voilà : J'ai besoin de connaître la position de la souris relative à la fenêtre (Genre x=28px Vers la droite, et y=267px vers le bas), mais j'ai déjà écrit des fonctions pour plusieurs Class qui utilise des float... Alors j'aimerais pouvoir utiliser la position de la souris simplement avec des float (ou int/double/... ou autres type de nombre hein), et non avec des Vector Bizarre que je ne sais pas du tout utiliser.

    Si vous pouviez m'éviter d'apprendre toutes les fonctionnalité d'une classe pour 2 nombres ce serais parfait! Merci ^^

    • Partager sur Facebook
    • Partager sur Twitter
      5 février 2019 à 19:23:47

      Hello,

      DeveCout a écrit:

      Mais voilà : J'ai besoin de connaître la position de la souris relative à la fenêtre

      sf::Vector2i mousePos = sf::Mouse::getPosition(window);

      DeveCout a écrit:

      Alors j'aimerais pouvoir utiliser la position de la souris simplement avec des float (ou int/double/... ou autres type de nombre hein), et non avec des Vector Bizarre que je ne sais pas du tout utiliser.

      Rien de bizarre avec les vectors. Ici c'est juste une structure public qui contient x et y. Façon classique de représenter un point en math :). Il y a juste les types qui diffèrent.

      Par exemple ici, la position de la souris que l'on récupère avec la fonction static sf::Mouse::getPosition(...) est de type Vector2i (int), si tu veux la position sous forme de float, un cast vers un Vector2f (float) et c'est réglé :

      sf::Vector2i mousePosInt   = sf::Mouse::getPosition(window);
      sf::Vector2f mousePosFloat = static_cast<sf::Vector2f>(mousePosInt);

      Ensuite tu utilises les valeurs comme bon de te semble :

      std::cout << mousePosFloat.x << ", " << mousePosFloat.y;

      -
      Edité par Guit0Xx 5 février 2019 à 19:25:01

      • Partager sur Facebook
      • Partager sur Twitter

      ...

      SFML-positions souris

      × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
      × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
      • Editeur
      • Markdown