Historique des modifications - Message

Message #11390

Sujet: Problème GuiImage - image coupée


Type Date Auteur Contenu
Dernière modification 29-09-2013 06:35:24 IssamB
Salut à tous,
j'ai créer une fonction qui permet d'adapter la taille d'une IGUIImage à la taille de la fenêtre.
Le seul problème, c'est qu'en étant agrandi, l'image est coupé.

Code:
if(m_visible)
    {
        IGUIImage* temp = (IGUIImage*)m_element;
        if(m_lastScreenSize != m_device->getVideoDriver()->getScreenSize())
        {
            if(pos)
            {
                position2di a;
                a.X = m_position.X * m_device->getVideoDriver()->getScreenSize().Width / 100 ;
                a.Y = m_position.Y * m_device->getVideoDriver()->getScreenSize().Height / 100;
                temp->setRelativePosition(a);
            }


            if(dim)
            {
                dimension2du a;
                a.Width = m_size.Width * m_device->getVideoDriver()->getScreenSize().Width / 100;
                a.Height = m_size.Height * m_device->getVideoDriver()->getScreenSize().Height / 100;
                cout << a.Width << endl << a.Height << endl << endl;

                temp->setMaxSize(a);
                temp->setMinSize(a);
                temp->setScaleImage(true);
            }
            m_lastScreenSize = m_device->getVideoDriver()->getScreenSize();
        }
        m_element->draw();
    }

Screenshots

Création du message 29-09-2013 06:31:12 IssamB
Salut à tous,
j'ai créer une fonction qui permet d'adapter la taille d'une IGUIImage à la taille de la fenêtre.
Le seul problème, c'est qu'en étant agrandi, l'image est coupé.

Code:
if(m_visible)
    {
        IGUIImage* temp = (IGUIImage*)m_element;
        if(m_lastScreenSize != m_device->getVideoDriver()->getScreenSize())
        {
            if(pos)
            {
                position2di a;
                a.X = m_position.X * m_device->getVideoDriver()->getScreenSize().Width / 100 ;
                a.Y = m_position.Y * m_device->getVideoDriver()->getScreenSize().Height / 100;
                temp->setRelativePosition(a);
            }


            if(dim)
            {
                dimension2du a;
                a.Width = m_size.Width * m_device->getVideoDriver()->getScreenSize().Width / 100;
                a.Height = m_size.Height * m_device->getVideoDriver()->getScreenSize().Height / 100;
                cout << a.Width << endl << a.Height << endl << endl;

                temp->setMaxSize(a);
                temp->setMinSize(a);
                temp->setScaleImage(true);
            }
            m_lastScreenSize = m_device->getVideoDriver()->getScreenSize();
        }
        m_element->draw();
    }

Screenshots


Retour

Options Liens officiels Caractéristiques Statistiques Communauté
Préférences cookies
Corrections
irrlicht
irrklang
irredit
irrxml
Propulsé par Django
xhtml 1.0
css 2.1
884 membres
1440 sujets
11337 messages
Dernier membre inscrit: Saidov17
136 invités en ligne
membre en ligne: -
RSS Feed