Historique des modifications - Message

Message #11390

Sujet: Problème GuiImage - image coupée


TypeDateAuteurContenu
Dernière modification29-09-2013 06:35:24IssamB
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 message29-09-2013 06:31:12IssamB
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

OptionsLiens officielsCaractéristiquesStatistiquesCommunauté
Préférences cookies
Corrections
irrlicht
irrklang
irredit
irrxml
Propulsé par Django
xhtml 1.0
css 2.1
884 membres
1441 sujets
11339 messages
Dernier membre inscrit: Saidov17
48 invités en ligne
membre en ligne: -
RSS Feed