Toon posts:

[Flash] JPEGs laden

Pagina: 1
Acties:

Verwijderd

Topicstarter
Ik wil een afbeelding inladen (no problem) en deze op een leuke manier presenteren (problem). Wat ik wil doen, is steeds 1 pixel-rij van de afbeelding tonen (d.m.v. masking), over de hoogte van het Flash-scherm. Het effect doet er nu even niet toe. maar dit wel:

M'n movieclip is 148 pixels hoog. Je krijgt dus 148 movieclips van 1 pixel hoog (en 100% breedte), over de lengte van de clip. ECHTER, nu moet 'ie dus wel 148 keer die JPEG inladen en ik heb 't idee dat dit sneller kan.

Graag hulp :)

code:
1
2
3
4
5
6
7
_root.loadImage = "photos/testpic.jpg";

for(i = 0; i <= Stage.height; i++) {
    _root.attachMovie("mcPhotoRow", "mcPhotoRow" + i, i);
    eval("_root.mcPhotoRow" + i).loadMovie(_root.loadImage);
    eval("_root.mcPhotoRow" + i)._y = i;
}

Verwijderd

Topicstarter
...is er dus een manier om een movieClip - waar de JPEG bij aanvang in geladen is - te kopieren IN ieder van die 148 pixel rijtjes?

  • hobbit_be
  • Registratie: November 2002
  • Laatst online: 04-07-2025
not really(er is wel een soort van technique om multiple jpg download te voorkomen door een MC in een MC te zetten de sub MC te loaden en dan de parent MC te duplicaten). snap het effect ook niet echt, als je dat wat duidelijk maakt is er vast een andere weg om hetzelfde te doen...

Verwijderd

Topicstarter
De ideale manier zou zijn om de JPEG te laden in een clip die eigenlijk nog in de library staat, en die je vervolgens met attachMovie() weer in de 148 movieClips zet. Maar dat kan niet.

duplicateMovieClip() kan ook enkel kopieren naar hetzelfde niveau. Als ik dus een mcPhotoTemp heb, waar ik de foto in laad, dan kan ik die mcPhotoTemp niet dupliceren naar een andere clip.

Oftewel... het is onmogelijk (?)

  • TeeDee
  • Registratie: Februari 2001
  • Laatst online: 25-08 20:26

TeeDee

CQB 241

kan je niet makkelijker het volgende doen:
de jpg plaatsen.

daar in een laag overheen een masker maken die iedere keer een pixel zakt. Dan hoef je die jpg niet iedere keer in te laden..

of snap ik je probleem niet?

Heart..pumps blood.Has nothing to do with emotion! Bored


Verwijderd

Topicstarter
Je kunt een masker niet bewegen :) Behalve als je de parent verplaatst, en de gemaskerde clip daar precies tegenin.

Maar nee, het is geen optie. Want iedere pixelrij moet onafhankelijk bewerkt kunnen worden.

  • McVirusS
  • Registratie: Januari 2000
  • Laatst online: 21-08 10:46
Je kan beste volgens mij wel met masks werken, oud truukje uithalen; movieclip met daarin een mask met daaronder een movieclip. Vervolgens move je de parent movieclip en de movieclip die daarin in tegenover gestelde richting van elkaar en dan heb je volgens mij dat effect wat jij wilt bereiken.

edit:
Okay dat idee had je dus al

[ Voor 8% gewijzigd door McVirusS op 16-01-2003 14:53 ]


  • McVirusS
  • Registratie: Januari 2000
  • Laatst online: 21-08 10:46
Verwijderd schreef op 16 January 2003 @ 14:43:
Maar nee, het is geen optie. Want iedere pixelrij moet onafhankelijk bewerkt kunnen worden.


Wat voor effect wil je precies bereiken dan? Want ik snap het toch nog niet helemaal. Je kan eventueel ook 148 movieclips eroverheen zitten van 1 px hoog..of begrijp ik het nou verkeerd?

  • TeeDee
  • Registratie: Februari 2001
  • Laatst online: 25-08 20:26

TeeDee

CQB 241

niet zozeer een masker maar gewoon een vlak in een tint. Wit oid...(of je eigen achtergrond kleur)

Heart..pumps blood.Has nothing to do with emotion! Bored


  • McVirusS
  • Registratie: Januari 2000
  • Laatst online: 21-08 10:46
TeeDee schreef op 16 januari 2003 @ 14:55:
niet zozeer een masker maar gewoon een vlak in een tint. Wit oid...(of je eigen achtergrond kleur)


Ja, dat bedoelde ik dus ook in m'n vorige post. Maar dat ligt er dus aan wat voor effect de topicstarter wil bereiken :).

Verwijderd

Topicstarter
Ik wil dat ding opbouwen door steeds 1 rij meer te laten zien, en de onderste pixelrij helemaal door te trekken naar beneden. Heel moeilijk uit te leggen.

Waar het mij om gaat: hoe krijg ik een JPEG bestand dat 1x is ingeladen in 148 andere movieclips.

Verwijderd

Topicstarter
Eureka! Ik heb de oplossing.

mcPhotoBox bevat het masker, met daaronder een instance van mcPhotoHolder

Aan die mcPhotoHolder hang ik een on(load) statement, die vervolgens gewoon een clipje, waarin de JPEG reeds geladen is, vanaf de _root inlaadt.

Verwijderd

Verwijderd schreef op 16 januari 2003 @ 13:56:
Ik wil een afbeelding inladen (no problem) en deze op een leuke manier presenteren (problem). Wat ik wil doen, is steeds 1 pixel-rij van de afbeelding tonen (d.m.v. masking), over de hoogte van het Flash-scherm. Het effect doet er nu even niet toe. maar dit wel:

M'n movieclip is 148 pixels hoog. Je krijgt dus 148 movieclips van 1 pixel hoog (en 100% breedte), over de lengte van de clip. ECHTER, nu moet 'ie dus wel 148 keer die JPEG inladen en ik heb 't idee dat dit sneller kan.

Graag hulp :)

code:
1
2
3
4
5
6
7
_root.loadImage = "photos/testpic.jpg";

for(i = 0; i <= Stage.height; i++) {
    _root.attachMovie("mcPhotoRow", "mcPhotoRow" + i, i);
    eval("_root.mcPhotoRow" + i).loadMovie(_root.loadImage);
    eval("_root.mcPhotoRow" + i)._y = i;
}
offtopic:
Zit je nog steeds bij amercom oscar????? :) Ralph(PI)..

Verwijderd

148 gemaskde mc's gaat nooit op het gewesnte platform vloeiend draaien...

Verwijderd

Topicstarter
Haha. JUP :) How ya doin'?

Jij bent toevallig geen oplossing hiervoor he? Ik zie net dat - wat ik dacht de de oplossing was - ook niet kan.

Verwijderd

ik ga ff flatje gauw maken...

  • hobbit_be
  • Registratie: November 2002
  • Laatst online: 04-07-2025
zie het ook niet direct en snap wel wat je wil doen - maar ik dacht dat als je een mask dynamisch genereert je dit toch wel kunt bewegen/resizen?? heel jammer dat je niet aan de pixel data van een jpg kunt in Flash (director kan dit wel).

je full pick op de achtergrond

daarover nog een fullpick maat dan y-gescaled dat 1 px row = total height - currentline en dan nog die juist position. en dan nog een mask dat gewoon telkens 1 ypx kleiner wordt.

gebruik je 2 mc + 1 mask wat wel meevalt alhoewel zo'n yscale van een jpg ook wel niet snel zal zijn...

ik neem aan dat je de 'rainfall' effect wil doen?

Verwijderd

Topicstarter
Rainfall... Trace-down... whatever. Je snap in iedergeval wat ik bedoel :)

  • McVirusS
  • Registratie: Januari 2000
  • Laatst online: 21-08 10:46
Nou snap ik nog steeds niet welk effect je wilt bereiken :).

Verwijderd

erm...probleem is dat het opzich wel mogelijk is om iets wat ingeladen is te dupliceren, maar dat ik geen mogelijkheid zie om een ingeladen jpg te dupliceren, zonder generator........kan je niet een swf inladen???

  • hobbit_be
  • Registratie: November 2002
  • Laatst online: 04-07-2025
B-top:

newMC = createNewMC();
loaderMC = createNewMC(newMC); //parent
loaderMC.loadMovie("test.jpg");

newMC.duplicateMovieClip zou perfect moeten werken ;) (ZOU heb het nog niet geprobeert ben helaas weer fulltime met Java aan't knoeien)

Verwijderd

hobbit_be schreef op 16 January 2003 @ 20:23:
B-top:

newMC = createNewMC();
loaderMC = createNewMC(newMC); //parent
loaderMC.loadMovie("test.jpg");

newMC.duplicateMovieClip zou perfect moeten werken ;) (ZOU heb het nog niet geprobeert ben helaas weer fulltime met Java aan't knoeien)
Dat is niet mogelijk; de instance word nl. gedupliceerd, maar zonder de loadMovie acties (zowel swf als jpg) command.
Wat wel kan is dat je een swf in laad met daarin een mc die je dupliceert.....dat zou werken. Daarom noemde ik ook generator (of iets dergelijks ming is ook best :) ).

Dusssss..maar ik heb een andere oplossing, ik heb volgens mij door welk effect er bedoeld word.....kom ik later op terug.

  • hobbit_be
  • Registratie: November 2002
  • Laatst online: 04-07-2025
ah zo zit dat - vond het al een beetje gek - heb ik dus glad verkeerd begrepen ...

Verwijderd

zo...nog ff zitten spelen...

Is DIT wat je bedoelde Oscar?

Verwijderd

Verwijderd schreef op 17 January 2003 @ 01:54:
zo...nog ff zitten spelen...

Is DIT wat je bedoelde Oscar?
Hey zo'n geval heb ik ook ooit nog 's gemaakt :D

Check it out: http://www.xndr.com/dev/sitefeatures/

Kies "imagetransitions"

  • TRON
  • Registratie: September 2001
  • Laatst online: 16-08 07:26
Verwijderd schreef op 17 januari 2003 @ 07:06:
[...]

Hey zo'n geval heb ik ook ooit nog 's gemaakt :D

Check it out: http://www.xndr.com/dev/sitefeatures/

Kies "imagetransitions"
Hey, die dingen zien er wel vet uit man :) Vooral 'framework'. En die XML menu's zijn ook wel lekker.

Leren door te strijden? Dat doe je op CTFSpel.nl. Vraag een gratis proefpakket aan t.w.v. EUR 50 (excl. BTW)


Verwijderd

Topicstarter
Dat is precies wat ik bedoelde B-Top :D Vieze prutser ;)

Ik kwam er net achter dat het ook met 2 lagen kan. 1 Waarin de afbeelding al volledig geladen is, en 1 de de resterende hoogte opvult met een 1-pixel-rij die vertikaal gescaled is.

Source?

  • oh,when?
  • Registratie: April 2000
  • Niet online

oh,when?

...

Verwijderd schreef op 17 January 2003 @ 01:54:
zo...nog ff zitten spelen...

Is DIT wat je bedoelde Oscar?
aargghhh..das gewoon een vieze java applet effect in flash!! dood!! :( |:( :'( ;)

"You're only as good, as what you did last week."


Verwijderd

oh,when? schreef op 17 January 2003 @ 11:03:
[...]
aargghhh..das gewoon een vieze java applet effect in flash!! dood!! :( |:( :'( ;)
Als ik exact nu dood zou gaan zou ik 2 deadlines missen ... ;)

Verwijderd

Topicstarter
Thanks B! Ben benieuwd hoe je het klaargespeeld hebt ;)

Verwijderd

Voor de liefhebbers:

Flash ActionScript:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
#initclip 5

rSys.imgTracer = function(){
    
}

var p = rSys.imgTracer.prototype = new MovieClip();

//Publics
p.loadImg = function(i){
    var imgf = this.createEmptyMovieClip('imgf_mc', rSys.d++);
    var imgh = this.createEmptyMovieClip('imgh_mc', rSys.d++);
    var imgt = imgh.createEmptyMovieClip('imgt_mc', rSys.d++);
    imgm = imgh.createEmptyMovieClip('imgm_mc', rSys.d++);
    imgf.loadMovie(i);
    imgt.loadMovie(i);
    this.onEnterFrame = this.$waitForImgLoad;
}

p.startDownTrace = function(){
    this.onEnterFrame = this.$downTrace;    
}

p.startUpTrace = function(){
    this.onEnterFrame = this.$upTrace;  
}

//Privates

p.$waitForImgLoad = function(){
    var bl = this.imgf_mc.getBytesLoaded();
    var bt = this.imgf_mc.getBytesTotal();
    if(bl>4&&bt==bl){
        this.onDoneLoading();
    }
}

p.$makeMask = function(m,ma,h){
    m.clear();
    m.beginFill (0x000000,40);
    m.lineTo (0, h);
    m.lineTo (this.$xs, h);
    m.lineTo (this.$xs, this.$ys);
    m.lineTo (0, this.$ys);
    m.endFill();
    ma.setMask(m);
}

p.$downTrace = function(){
    var tp = this.tracePos+=2;
    if(tp<this.$ys+1){
        this.traced._y = -tp*(this.$snum/101);
        this.$makeMask(this.mask,this.traced,tp);
    }else{
        this.startUpTrace();
    }
}

p.$upTrace = function(){
    var tp = this.tracePos-=2;
    if(tp>0){
        this.traced._y = -tp*(this.$snum/101);
        this.$makeMask(this.mask,this.traced,tp);
    }else{
        this.startDownTrace();  
    }
}

//Handlers
p.onDoneLoading = function(){
    this.onEnterFrame = null;
    this.$xs = this.imgf_mc._width;
    this.$ys = this.imgf_mc._height;
    var holder = this.imgh_mc;
    
    this.mask = holder.imgm_mc;
    this.traced = holder.imgt_mc;
    
    this.tracePos = 0;
    this.$snum = this.$ys*40;
    //this.$snum = 10000;
    this.traced._yscale = this.$snum;
    this.startDownTrace();

}

Object.registerClass('imgTracer', rSys.imgTracer);
#endinitclip

  • oh,when?
  • Registratie: April 2000
  • Niet online

oh,when?

...

* oh,when? heeft een hele mooi flame klaar voor diegene die als eerste post "Hoe krijg ik dit effect in Flash"

>:)

offtopic:
ralph...check je mail ff of kom ff online..kmoet ff wat bespreken...
:)

[ Voor 44% gewijzigd door oh,when? op 17-01-2003 13:06 ]

"You're only as good, as what you did last week."


  • hobbit_be
  • Registratie: November 2002
  • Laatst online: 04-07-2025
nice

  • XangadiX
  • Registratie: Oktober 2000
  • Laatst online: 17-06 09:56

XangadiX

trepanatie is zóó kinderachtig

* XangadiX is benieuwd:

hoe krijg ik DIT effect in flash? :P

[ Voor 11% gewijzigd door XangadiX op 17-01-2003 16:24 ]

Stoer; Marduq


Verwijderd

XangadiX schreef op 17 januari 2003 @ 16:24:
* XangadiX is benieuwd:

hoe krijg ik DIT effect in flash? :P
Op zich mogelijk, heb ff beetje zitten kloten, klopt helemaal nix van mijn displacement (en wie heeft er ooit druppel sporen zien rond sinussen? :) ).
Maar die displacement komt wel ok, en dan blijkt het nie zo moeilijk....

Kijk HIEROOOO!

[ Voor 11% gewijzigd door Verwijderd op 17-01-2003 17:41 ]


  • XangadiX
  • Registratie: Oktober 2000
  • Laatst online: 17-06 09:56

XangadiX

trepanatie is zóó kinderachtig

lol; ik zat eigenlijk te wachten op de flame van oWhen, maar dit is ook leuk. Hmm misschien zelf ook meer eens mee pielen. Ik denk dat je om te beginnen die rondjes stil moet zetten en dat je als het ware cirkeltjes van binnen naar buiten moet bewegen en de rand dunner maken... just two cents. Ik denk dat ik er ook maar eens mee ga kloten :)

Stoer; Marduq


  • tie-rep
  • Registratie: Oktober 2001
  • Laatst online: 19-02 15:56

tie-rep

nu met ir. !

mooi hoor B-Top!

erg netjes! _/-\o_ :)

  • bRight
  • Registratie: Juli 2000
  • Laatst online: 27-11-2024

bRight

digitaal

n/m 2e pagina niet gezien :)

[ Voor 87% gewijzigd door bRight op 17-01-2003 19:19 ]


Verwijderd

XangadiX schreef op 17 januari 2003 @ 18:17:
lol; ik zat eigenlijk te wachten op de flame van oWhen, maar dit is ook leuk. Hmm misschien zelf ook meer eens mee pielen. Ik denk dat je om te beginnen die rondjes stil moet zetten en dat je als het ware cirkeltjes van binnen naar buiten moet bewegen en de rand dunner maken... just two cents. Ik denk dat ik er ook maar eens mee ga kloten :)
Ik wilde eigenlijk nog wat eraan gaan doen, maar toen kwam ik dat spelletje van je weer tegen....damn addictive :)

Verwijderd

/me leest B-Tops actionscript.. uhmmm, pakt actionscript boek erbij ;)
maw erg gaaf! :)

  • XangadiX
  • Registratie: Oktober 2000
  • Laatst online: 17-06 09:56

XangadiX

trepanatie is zóó kinderachtig

Ik wilde eigenlijk nog wat eraan gaan doen, maar toen kwam ik dat spelletje van je weer tegen....damn addictive
aaah was jij dat , 01134, 2003.01.17@22:49:17 ? ik dacht al zoiets, iemand die direct de link naar dat spel weet en verder niet rondsurft moet een guessing junk zijn :P

[ Voor 7% gewijzigd door McVirusS op 19-01-2003 14:25 ]

Stoer; Marduq


Verwijderd

XangadiX schreef op 18 januari 2003 @ 03:16:
[...]


aaah was jij dat a.roemd1.lb.home.nl, 01134, 2003.01.17@22:49:17 ? ik dacht al zoiets, iemand die direct de link naar dat spel weet en verder niet rondsurft moet een guessing junk zijn :P
Erm nej......ik was ralph, je weet wel, die ene die steeds de hoogste score heeft. :)

offtopic:
Ik uit roermond....as if.

[ Voor 3% gewijzigd door Verwijderd op 19-01-2003 14:30 ]


Verwijderd

XangadiX schreef op 18 January 2003 @ 03:16:
[...]


aaah was jij dat <"Mijn adres">, 2003.01.17@22:49:17 ? ik dacht al zoiets, iemand die direct de link naar dat spel weet en verder niet rondsurft moet een guessing junk zijn :P
Zou je alsjeblieft men IP uit beeld kunnen halen?samen met de rest van de info?alvast bedankt.
Pagina: 1