Kuvat : funktiot

LOADANIMIMAGE


   KUVAUS

Lataa kuvan kiintolevyltä. Tämän jälkeen kuva voidaan piirtää DrawImage-komennolla.

Toisin kuin LoadImage, tällä komennolla voit ladata animoituja kuvasarjoja. Sen sijaan, että lataisit kaikki animaation framet eri tiedostoista, voit ladata kaikki yhdestä tiedostosta. Tämä yksinkertaistaa kuvien piirtämistä huomattavasti. Animoitu kuva piirretään normaalisti DrawImage-komennolla, mutta sen perään kirjoitetaan ylimääräinen parametri, joka kertoo CoolBasicille piirrettävän framen numeron. Ensimmäinen frame on nolla.

Jotta kuvasarja voidaan ladata oikein, täytyy CoolBasicille kertoa kaikkien framejen koko, sekä kuvasarjan pituus. Oikeaoppinen kuvasarja sisältää tasakokoisia kuvia, jotka on sijoitettu vieri viereen ilman erottavia pikseleitä. Esimerkki:

Tuetut formaatit ovat: bmp, jpg, png ja tga

Kaikki ladatut kuvat tuhoutuvat, kun SCREEN-komentoa käytetään ikkunakoon tai resoluution vaihtamiseen. Lataa kuvat uudelleen, ennen kuin yrität käyttää niitä. Muutoin ohjelma kaatuu.

Funktio palauttaa nollan, jos kuvaa ei voitu ladata.

Älä koskaan lataa kovalevyltä mitään silmukan sisällä! Tätä komentoa tulisi käyttää vain ohjelman alussa.

   KÄYTTÖ
LOADANIMIMAGE (tiedostonimi, frame_leveys, frame_korkeus, aloitus, pituus)

  • tiedostonimi = Merkkijono. Ladattavan kuvan nimi tai polku.
  • frame_leveys = Kokonaisluku. Framen leveys pikseleinä.
  • frame_korkeus = Kokonaisluku. Framen korkeus pikseleinä.
  • aloitus = Kokonaisluku. Monesko on ensimmäinen frame kuvatiedostossa. Yleensä nolla.
  • pituus = Kokonaisluku. Montako framea kuvasarjassa on (esimerkkikuvassa on 8).

  • Katso myös: LOADANIMIMAGE

       ESIMERKKI
    FrameLimit 40

    'Brackground white
    ClsColor cbwhite

    anim=LoadAnimImage("Media/note.bmp",32,32,0,8)
    MaskImage anim,cbmagenta

    While Not EscapeKey()

        'Draw the image
        DrawImage anim,184,134,f
        
        'animate
        If k=0 Then
            f=f+1
            If f>7 Then f=0
        EndIf
        k=k+1
        If k>2 Then k=0 'change frame every 3. time

        DrawScreen

    Wend

    <<TAKAISIN