Forum Sveta kompjutera

Nazad   Forum Sveta kompjutera > Test Run > Programiranje
Uputstvo Članstvo Kalendar Današnje poruke Pretraži

Programiranje Programski jezici, tehnike, alatke...

Odgovor
 
Alatke vezane za temu Vrste prikaza
Stara 7.1.2013, 21:43   #1
clzola
Član
 
Član od: 14.4.2010.
Lokacija: Podgorica
Poruke: 332
Zahvalnice: 61
Zahvaljeno 11 puta na 11 poruka
Određen forumom [AS3] Crtanje slika

Kako da nacrtam sliku pomocu AS3. Za sada sam ukapirao sledece
Ucitam sliku pomocu klase loader i onda je crtam na sljedeci nacin
Kod:
myLoader.x = x;
myLoader.y = y;
addChild(myLoader);
Posto imam ukupno 4 slike koje treba da nacrtam, napravio sam klasu Letter koja sadrzi klasu Loader kao privatnu pomjenljivu i onda radim sljedece:
Kod:
var myLetter:Letter = new Letter("data/slika.jpg");
myLetter.setPosition(x, y);
addChild(myLetter.getLoader());
I ovo radi, medjutim. Potrebno mi je da jednu sliku nacrtam vise puta. Ali posto se desava ista stvar kao i u Javi, kopiranje referenci a ne objekata dolazim do rezultata da svaki put kada kliknem na Flash prozor, on pomjeri sliku umjesto da je nacrta novu na koordinatama gdje sam kliknuo. Ne znam kako da kopiram objekat, posto je i varijabla Loader unutar klase Letter takodje referenca pa ne mogu da kazem newLoader = oldLoader.
Palo mi je napamet resenje da svaki put kada kliknem on kreira novu klasu letter i ponovo ucita sliku u memoriju, sto se nekako ne isplati zbog memorije.

Takodje zelim da te slike uvijek budu nacrtane na vrhu, jer se nekad crtaju na vrhu, nekad iza slike koja navodno cini background, ako me shvatate.

Koristim komandu: gotoAndStop(2) i gotoAndStop(4), pa mozda zbog ovoga se nekad slike crtaju na vrhu a nekad pozadi ...
Ovaj problem bih mogao da rijesim tako da se iscrtavanje vrsi posle poziva ove dvije metode, medjutim za to mi je potreba lista objekata koju bih iznova i iznova crtao, sto opet dodatno trosi memoriju i da napomenem metode su pozvane na kraju funkcija, posle crtanja moje "slika.jpg"

Helpppp !

Poslednja ispravka: Andross (7.1.2013 u 23:47)
clzola je offline   Odgovor sa citatom ove poruke
Stara 10.1.2013, 17:07   #2
boshkodj
Veteran
 
Član od: 4.7.2008.
Lokacija: Somewhere along the line
Poruke: 505
Zahvalnice: 85
Zahvaljeno 34 puta na 29 poruka
Određen forumom Re: [AS3] Crtanje slika

Nije mi jasno sta radis, ako bi mogao malo da pojasnis.

Zbog cega koristis Loader? I sta ce ti ta dodatna Letter klasa?

Zasto jednostavno ne odradis nesto tipa :

Kod:
[Embed(source = "data/slika.jpg")] private var data_slika:Class;
private var slika:Bitmap;
Kasnije tu sliku mozes koristiti koliko god puta hoces iznova :

Kod:
slika = new data_slika();
slika.x = 100;
slika.y = 100;
addChild(slika);

// onda odradis tako za ostale 3.

slika = new data_slika();
slika.x = 200;
slika.y = 200;
addChild(slika);

// ...
boshkodj je offline   Odgovor sa citatom ove poruke
Sledeći korisnik se zahvaljuje korisniku boshkodj na korisnoj poruci:
clzola (10.1.2013)
Stara 10.1.2013, 17:45   #3
clzola
Član
 
Član od: 14.4.2010.
Lokacija: Podgorica
Poruke: 332
Zahvalnice: 61
Zahvaljeno 11 puta na 11 poruka
Određen forumom Re: [AS3] Crtanje slika

Ideja mi da ucitam sve slike koje su mi potrebne kasnije, i onda da ih crtam vise puta. A Problem mi je sljedeci, kad ucitam tu slika.jpg. I kad napisem:
Kod:
slika.x = x;
slika.y = y;
addChild(slika);
Slika se pojavi na ekranu na poziciji (x, y). Kada opet kazem isto sa drugim koordinatama (x1, y1) zelim da se doda jos jedna takva slika na poziciji (x1, y1), medjutim on pomjeri onu staru. Zato mi treba nacin kako da jednu sliku crtam vise puta ali da se ne desava ovo sto sam naveo.
Pproba osam ovo, ali mi trazi nekakav FlexSDK
clzola je offline   Odgovor sa citatom ove poruke
Stara 10.1.2013, 23:32   #4
Stevvan
Veteran
 
Član od: 17.12.2005.
Lokacija: Zarkovo, Beograd
Poruke: 1.114
Zahvalnice: 97
Zahvaljeno 179 puta na 104 poruka
Slanje poruke preko MSN-a korisniku Stevvan Slanje poruke preko Skypea korisniku Stevvan
Određen forumom Re: [AS3] Crtanje slika

Lose si osmislio sistem, tj. loader ne treba da ti bude u privatni atribut klase Letter. Bolja opcija bi ti bila da je loader odvojen statican objekat koji ima ucitane sve slike pa posle samo uzimas iz njega slike. Nesto na ovaj fzn u pseudo kodu:

Kod:
letter1 = new Letter(loader.getImage("putanja ili naziv slike");
letter1.x = 100;
letter1.y = 100;
addChild(letter1)
letter2 = new Letter(loader.getImage("...");
...
addChild(letter2)
Dakle najbolje da napravis da Loader bude singletoon, a mozes da mu napravis i getImage da bude staticna funkcija
Stevvan je offline   Odgovor sa citatom ove poruke
Stara 11.1.2013, 2:17   #5
boshkodj
Veteran
 
Član od: 4.7.2008.
Lokacija: Somewhere along the line
Poruke: 505
Zahvalnice: 85
Zahvaljeno 34 puta na 29 poruka
Određen forumom Re: [AS3] Crtanje slika

Jednostavno napravi posebnu klasu ( npr "Assets" ) za slike, ili sta god, i onda u njoj ucitavaj sve sto ti je potrebno i napravi ih staticnim konstantama ( public static cosnt )..

Kasnije u programu im lako mozes pristupiti ( Assets.slika1, Assets.slika2... )
boshkodj je offline   Odgovor sa citatom ove poruke
Odgovor

Bookmarks sajtovi


Vaš status
Ne možete postavljati teme
Ne možete odgovarati na poruke
Ne možete slati priloge uz poruke
Ne možete prepravljati svoje poruke

BB kod: uključeno
Smajliji: uključeno
[IMG] kod: uključeno
HTML kod: isključeno


Slične teme
tema temu započeo forum Odgovora Poslednja poruka
Recover izbrisanih slika, sa aparata ili računara mozdani Nosači podataka 0 31.10.2008 14:33
Slika pozivaoca preko cijeloga ekrana JovanK Programi za mobilne telefone 3 12.10.2008 17:32
Jos malo pa fenomenalna slika - pretamna slika na Samsung SyncMaster T220... dzena Grafika 1 31.8.2008 20:19
spašavanje slika sa memorijske kartice Aleksandar Tolic Aplikativni softver 6 9.4.2008 21:54
prepravka kvaliteta slika sa telefona Master Neo Programi za mobilne telefone 0 11.1.2006 14:34


Sva vremena su po Griniču +2 h. Sada je 0:52.


Powered by vBulletin® verzija 3.8.7
Copyright ©2000–2024, vBulletin Solutions, Inc.
Hosted by Beograd.com