Bienvenue, Invité. Merci de vous connecter ou de vous inscrire.
Avez-vous perdu votre e-mail d'activation ?

Auteur Sujet: [Resolu] SFML 2.0 | Changer la taille d'un Sprite en pixel  (Lu 6049 fois)

0 Membres et 1 Invité sur ce sujet

Nanocryk

  • Invité
[Resolu] SFML 2.0 | Changer la taille d'un Sprite en pixel
« le: Février 27, 2013, 12:02:51 pm »
Bonjour à tous !

Je viens de passer sur la SFML 2.0 et je n'arrive pas à trouver une méthode pour définir la longueur et la largeur de mon Sprite.

Il y a bien la méthode SetScale(), mais elle n'est pas par rapport aux pixels mais à la taille de base de l'image.
Comment faire pour definir la taille en pixels de mon Sprite ?

De plus, une partie de mon Sprite seulement est affiché car j'utilise la méthode setTextureRect(). Je voudrais donc définir la taille de Sprite qui sera affiché au final.

Si quelqu'un à une idée pour régler ce léger problème, je suis preneur  :D.

Merci à l'avance d'une réponse éventuelle.

Nanocryk
« Modifié: Février 27, 2013, 08:38:05 pm par Nanocryk »

Laurent

  • Administrator
  • Hero Member
  • *****
  • Messages: 32498
    • Voir le profil
    • SFML's website
    • E-mail
Re : SFML 2.0 | Changer la taille d'un Sprite en pixel
« Réponse #1 le: Février 27, 2013, 12:10:47 pm »
Citer
Il y a bien la méthode SetScale(), mais elle n'est pas par rapport aux pixels mais à la taille de base de l'image.
Comment faire pour definir la taille en pixels de mon Sprite ?
Tu sors une division pour retomber sur un facteur d'échelle à partir de ta taille en pixels.
Laurent Gomila - SFML developer

Nanocryk

  • Invité
Re : SFML 2.0 | Changer la taille d'un Sprite en pixel
« Réponse #2 le: Février 27, 2013, 12:24:39 pm »
Mais comment je connais la taille en pixel de mon Sprite ?

Laurent

  • Administrator
  • Hero Member
  • *****
  • Messages: 32498
    • Voir le profil
    • SFML's website
    • E-mail
Re : SFML 2.0 | Changer la taille d'un Sprite en pixel
« Réponse #3 le: Février 27, 2013, 12:30:31 pm »
La taille initiale d'un sprite (càd sans scale appliqué), est toujours la taille de son textureRect. Mais la récupérer avec getLocalBounds() est plus élégant.

Donc tu divises la nouvelle taille par celle du localBounds, et tu as tes facteurs d'échelle.
Laurent Gomila - SFML developer

Nanocryk

  • Invité
Re : SFML 2.0 | Changer la taille d'un Sprite en pixel
« Réponse #4 le: Février 27, 2013, 01:36:36 pm »
Merci beaucoup !
Sinon getLocalBounds() retourne taille de l'image en entier ou de la partie à afficher ?

Laurent

  • Administrator
  • Hero Member
  • *****
  • Messages: 32498
    • Voir le profil
    • SFML's website
    • E-mail
Re : SFML 2.0 | Changer la taille d'un Sprite en pixel
« Réponse #5 le: Février 27, 2013, 01:54:07 pm »
Elle renvoie la taille du sprite -- la classe Texture a sa propre fonction getSize. C'est une fonction commune à toutes les classes graphiques (Shape, Text, Sprite).
Laurent Gomila - SFML developer

Nanocryk

  • Invité
Re : SFML 2.0 | Changer la taille d'un Sprite en pixel
« Réponse #6 le: Février 27, 2013, 08:37:42 pm »
Ok merci beaucoup