Avatar billede hobz Nybegynder
10. marts 2003 - 12:46 Der er 36 kommentarer og
1 løsning

Elektricitet

Jeg skal bruge noget animation med elektricitet der går fra et statisk punkt på x-aksen og et tilfældigt sted på y-aksen, til et andet statisk punkt på x-aksen og et andet tilfældigt sted på y-aksen.

Linien der tegnes mellem disse punkter, skal være random "knækket" som et lyn, så det ligner elektricitet der springer.

Hvordan laver man dette?
Avatar billede barklund Nybegynder
10. marts 2003 - 13:04 #1
Det var en af de sværere, men jeg vil da gerne prøve :o)

Vent lige et par minutter :o)
Avatar billede barklund Nybegynder
10. marts 2003 - 13:11 #2
x1 = 200;
x2 = 400;
y_min = 100;
y_max = 400;

lyn_tykkelse = 3;
lyn_farve = 0xFFFF00;
lyn_afvigelse = 20;
lyn_distance = 10;

_root.onMouseDown = function() {
    y1 = y_min+Math.round(Math.random()*(y_max-y_min));
    y2 = y_min+Math.round(Math.random()*(y_max-y_min));
   
    clear();
    lineStyle(lyn_tykkelse, lyn_farve, 100);
    moveTo(x1,y1);
    var x,y,a = (y2-y1)/(x2-x1), b = y1-x1*a;
    for (x = x1; x < x2; x+= lyn_distance) {
        y = a*x+b+Math.round(Math.random()*lyn_afvigelse)-lyn_afvigelse/2;
        lineTo(x,y);
    }
    lineTo(x2,y2);
}
Avatar billede barklund Nybegynder
10. marts 2003 - 13:12 #3
Put det ind i en hel tom flash mx app, test og tryk på musen :o)
Avatar billede barklund Nybegynder
10. marts 2003 - 13:12 #4
Den kan endda sættes til at vibrere om du ønsker:
Avatar billede barklund Nybegynder
10. marts 2003 - 13:13 #5
x1 = 200;
x2 = 400;
y_min = 100;
y_max = 400;

lyn_tykkelse = 3;
lyn_farve = 0xFFFF00;
lyn_afvigelse = 20;
lyn_distance = 10;

_root.onMouseDown = function() {
    y1 = y_min+Math.round(Math.random()*(y_max-y_min));
    y2 = y_min+Math.round(Math.random()*(y_max-y_min));
   
    this.onEnterFrame = draw;
}

draw = function() {
    clear();
    lineStyle(lyn_tykkelse, lyn_farve, 100);
    moveTo(x1,y1);
    var x,y,a = (y2-y1)/(x2-x1), b = y1-x1*a;
    for (x = x1; x < x2; x+= lyn_distance) {
        y = a*x+b+Math.round(Math.random()*lyn_afvigelse)-lyn_afvigelse/2;
        lineTo(x,y);
    }
    lineTo(x2,y2);
}
Avatar billede barklund Nybegynder
10. marts 2003 - 13:15 #6
Hov, det er en lille fejl... I for-løkken skal x først starte lyn_distance efter x1:

for (x = x1+lyn_distance; x < x2; x+= lyn_distance)

I begge funktioner :o)
Avatar billede hobz Nybegynder
10. marts 2003 - 14:25 #7
Superfedt! Jeg er desværre ikke i stand til at kigge på det lige nu, men vil kigge på det så snart jeg kommer hjem.

Der findes vel ikke en online flash-emulator så man kan se resultatet af den kode du har skrevet ?
Avatar billede barklund Nybegynder
10. marts 2003 - 14:51 #8
Avatar billede hobz Nybegynder
10. marts 2003 - 15:29 #9
Nice!

Jeg ville også gerne have, at udgangsstedet og indgangsstedet var random, samt en random pause og varighed på lynet.
Og til sidst.. at start-y og slut-y punkterne kunne "slide" random op/ned.

Kan man sætte sparks på linerne? eller et blur, evt. med en lavere opacity på kopier af tidligere layers?
Avatar billede hobz Nybegynder
10. marts 2003 - 15:36 #10
Og kan man lave flere på een gang?
Avatar billede barklund Nybegynder
10. marts 2003 - 15:38 #11
Forklar nærmere...!

Den skal vel stadig bevæge sig fra fast x til fast x?

Men den skal bevæge sig lidt i start og slut y og de gamle streger skal langsomt fade ud...?
Avatar billede hobz Nybegynder
10. marts 2003 - 15:43 #12
ja.. fast x til fast x.

Ja, således at det ser ud som om den glider op/ned på de faste x'er.
Relativt langsomt, men helst på en 100ms eller noget.
Avatar billede barklund Nybegynder
10. marts 2003 - 15:51 #13
arbejder på det...

hvad mener du med pause og varighed?
Avatar billede hobz Nybegynder
10. marts 2003 - 15:53 #14
Jo sådan, at lynet opstår (uden at trykke mousebutton) og så varer en tilfældig tid hvor det derefter forsvinder.
Så er der en pause af tilfældig varighed, før lynet opstår igen.
Avatar billede barklund Nybegynder
10. marts 2003 - 15:55 #15
se linket igen... nu slider den meget lidt op og ned hele tiden...rent tilfældigt selvfølgelig... og de gamle streger ses i kort tid mens de fader ud over få frames...
Avatar billede barklund Nybegynder
10. marts 2003 - 15:56 #16
ok.... det kan også laves..
Avatar billede hobz Nybegynder
10. marts 2003 - 15:57 #17
sætter du hvor meget den slider op/ned i en variabel i .fla'en ?
Avatar billede hobz Nybegynder
10. marts 2003 - 15:59 #18
Det ser pissegodt ud det der!
Avatar billede barklund Nybegynder
10. marts 2003 - 16:03 #19
alt er sat som variabler øverst i .fla'en som du selv kan ændre... nu er det tid på...
Avatar billede hobz Nybegynder
10. marts 2003 - 16:17 #20
Superfedt!

Du får point når jeg kommer hjem!
Avatar billede hobz Nybegynder
10. marts 2003 - 16:17 #21
Hvis du lige laver et svar :)
Avatar billede barklund Nybegynder
10. marts 2003 - 16:22 #22
har efterbehandlet den en smule, sat hastigheden lidt op og sådan... :o)

har desuden tilføjet kommentaret rundt om...!
Avatar billede barklund Nybegynder
11. marts 2003 - 01:35 #23
en lille test:

fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
Avatar billede hobz Nybegynder
11. marts 2003 - 11:38 #24
Super! Kan jeg lave flere lyn på samme tid?
Avatar billede hobz Nybegynder
11. marts 2003 - 11:46 #25
Hmm.. når jeg loader lynet sammen med resten af siden, bliver animationen langsommere og langsommere ?
Avatar billede hobz Nybegynder
11. marts 2003 - 11:53 #26
(Glem det med langsommere animation, det var mig der havde fucket det op)
Avatar billede barklund Nybegynder
11. marts 2003 - 11:56 #27
Hmm... hvordan skal det se ud? Altså på et tilfældigt tidspunkt kommer der et lyn, der forsvinder efter et stykke tid... så kan de godt lappe over hinanden....?
Avatar billede barklund Nybegynder
11. marts 2003 - 11:56 #28
Tark for point forresten :o)
Avatar billede hobz Nybegynder
11. marts 2003 - 13:02 #29
Præcis.. så de kan lappe over hinanden!

Selv tak :)
Avatar billede barklund Nybegynder
12. marts 2003 - 11:48 #30
Jeg var så stresset igår, så jeg ikke fik det lavet... men nu vil jeg lige kigge på det :o)
Avatar billede barklund Nybegynder
12. marts 2003 - 12:02 #31
så er den opdateret...
Avatar billede hobz Nybegynder
12. marts 2003 - 14:26 #32
Jeg synes ikke jeg kan se nogen ændring? Jeg får en fejl i .fla'en
Avatar billede barklund Nybegynder
12. marts 2003 - 14:42 #33
prøv igen
Avatar billede hobz Nybegynder
12. marts 2003 - 14:45 #34
Nice! Kan man ik sætte en max variabel for antallet af lyn?
Avatar billede hobz Nybegynder
12. marts 2003 - 14:56 #35
Oh.. my bad
Avatar billede hobz Nybegynder
12. marts 2003 - 14:57 #36
TUSIND TAK for dit arbejde :)
Avatar billede barklund Nybegynder
13. marts 2003 - 00:02 #37
Det var ganske sjovt :o)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester