Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

[SFML 2.1] Wyświetlanie klasy w klasie za pomocą sf::Draw

Ostatnio zmodyfikowano 2015-03-01 21:39
Autor Wiadomość
qest43
Temat założony przez niniejszego użytkownika
[SFML 2.1] Wyświetlanie klasy w klasie za pomocą sf::Draw
» 2015-03-01 21:31:02
Jeśli mam klasę okno, i ono dziedziczy public sf::Drawable, i wyświetlam potem elementy które tam są poprzez target.draw(sprite); Następnie mam w tej klasie okno obiekt player, i on też dziedziczy public sf::Drawable, ale już nie można dostać się do niego z main, bo jest obiektem klasy okno, to jak wyświetlić tego playera za pomocą draw()?
P-127520
NopeDotAvi
» 2015-03-01 21:37:24
skoro klasa A i klasa B dziedziczą z klasy drawable to możesz wyświetlić w klasie B obiekt klasy A.

C/C++
class A
    : public sf::Drawable
{
private:
    virtual void draw( sf::RenderTarget & target, sf::RenderStates states ) const
    {
        //kod do rysowania w tej klasie
    }
};

class B
    : public sf::Drawable
{
private:
    virtual void draw( sf::RenderTarget & target, sf::RenderStates states ) const
    {
        //kod do rysowania w tej klasie
        target.draw( obA ); //wywola sie kod metody draw obiektu klasy A
    }
    A obA;
};
P-127522
qest43
Temat założony przez niniejszego użytkownika
» 2015-03-01 21:38:42
Wydawało mi się że target można ustawić tylko na określone typy np. sprite, i klasy on nie przyjmie.
P-127523
NopeDotAvi
» 2015-03-01 21:39:32
przyjmie jeżeli dziedziczy ona po drawable

i sprite to nie typ tylko klasa, która właśnie dziedziczy po drawable.
P-127524
« 1 »
  Strona 1 z 1