Avatar billede nextstep Nybegynder
19. marts 2004 - 17:02 Der er 10 kommentarer

Animation af Drakes ligning:

Hej jeg håber en eller anden kan hjælpe med et godt råd om hvordan man i Director kan lave en interaktiv animation som kan visualisere Drakes Ligning.

Drages ligning er:
N = R* x fp x np x fl x fi x fc x L
hvor:
N = Antal teknologiske civilisationer som i dag findes i Mælkevejen
R* = Antal nye stjerner som i gennemsnit dannes i Mælkevejen pr år
fp = Den prosentdel av disse stjerner som har planeter
np = Antal passende planeter pr planetsystem
fl = Den procentdel af disse planeter hvor liv opstår
fi = Den procentdel af planeterne med liv, hvor intelligente væsener udvikles
fc = Den procentdelen af intelligente væsener som udvikler evnen til at kommunikere
L = Levetiden i år for en teknologisk civilisation

Jeg er i gang med at lave en cd-rom med rummet som tema og vil bl.a. skrive om chancerne for liv andre steder i universet.

Hil Kristian
Avatar billede kanding Nybegynder
19. marts 2004 - 18:39 #1
Hvad er det helt nøjagtigt du vil opnå?

Ligningen kan jo sagtens regnes ud i Director og du kan også lave felter som brugeren kan indtaste tal i, men visuelt at beskrive det?

mener du interaktivt eller bare en animation?
Avatar billede nextstep Nybegynder
19. marts 2004 - 22:52 #2
Tak for dit hurtige svar.

Det er tanken, at lave en interaktiv animation, hvor brugeren indtaster samtlige værdier.

Problemet er at lave en visuel visning af resultatet - ikke blot et tal, som er resultatet, men at trække et eksempel ind på skærmen. Det kunne f.eks. laves med et billede af mælkevejen, hvor der af programmet blev indsat krydser på billedet. Selvsagt vil sådanne krydser alene være af pædagogiske grunde - da der er over 100 millioner sole i Mælkevejen og mælkevejen ser i forvejen meget tåget ud. Resultat bør ligeledes fremkomme som et tal for overblikkets skyld.

---

I det program jeg laver er der mange animationer og det er tanken at, denne skal være interaktiv, men at der gives et etsempel ud fra Jordens data og de øvrige variablers kendte størrelser - jeg har endnu ikke modtaget alle disse (kommer fra Århus Universitet).

Så formålet med aninmationen er at lege lidt med tanken om liv andre steder i Mælkevejen - dette vil være spændende, nar man kan regulere på variablerne.

Grunden til at jeg stiller spørgsmålet er dels at jeg er »løbet tør« for ideer og dels at jeg »er kørt fast kode mæssigt«.

Måtte jeg høre fra dig.

Med venlig hilsen

☺ Kristian
Avatar billede kanding Nybegynder
20. marts 2004 - 09:06 #3
hvis du kan fortælle hvordan det er i den virkelige verden  mere visuelt, skal jeg smide et par ideer...
Avatar billede nextstep Nybegynder
20. marts 2004 - 11:32 #4
Hej Kanding
Det er lidt svært at forklare hvordan mælkevejen ser ud i den virkelige verden - da der alene findes animerede billeder af den.

Tanken som jeg efterhånden er kommet til er, at man f.eks. i venstre side kan lave input felter for formlen.

Resultat af formlen vil være et tal - som bør vises i et felt for under input felterne.

For at gøre det visuelt - kunne man have et billede af mælkevejen på højre halvdel af skærmen. Hvor der over billedet er lagt et antal felter. f.eks. 100. I hver felt kunne vises et kryds taget fra resultat feltet hvis dette er et tal - for hvert resultat (krydser) må formlen være resultat minus en - intil resultat når nul (for hvert kryds der er sat).

Problemet er at få sat disse krydser i de respektive felter.

At jeg begrænser antallet af felter til f.eks. 100 er, at det visuelle vil gå tabt - hvis hele billedet krydses til. Derfor også et resultat-felt i tal - hvis resultat er 1000, mener jeg at det vil se særdeles mærkeligt ud med 1000 krydser.

Jeg håber du kan hjælpe med koden til felterne.

Hilsen Kristian
Avatar billede _k Nybegynder
20. marts 2004 - 21:21 #5
Sejt projekt!

Hvis vi tænker brugermæssigt (og delvis kodemæssigt for den sags skyld), er 1000 krydser for meget. Som du selv er inde på, er der alligevel ikke nogen der kan overskue noget som helst hvis hele skærmen bliver overklistret (selvom det da nok kunne være en pointe i sig selv :o)

Et par forslag. Drop inputfelter. De er uoverskuelige og siger ikke ret meget for den helt "blanke" bruger, der først skal bruge en masse tid på at finde ud af hvilke intervaller som er tilladte og hvorfor de er som de er.
I stedet kan du benytte nogle slidere eller drejeknapper som på stereoanlægget derhjemme. Det kan de fleste brugere langt bedre forholde sig til.
Ved ikke hvor mange ubekendte der reelt er i ligningen og hvor mange astronomerne mener at kende svaret på. Men 6 slide- eller drag-knapper er efter min smag lidt i overkanten at sidde og skulle justere på.

En teknisk løsning kunne være, at du anvender et billede af en galakse som baggrund, og ovenpå sætter en masse random prikker, hvis antal bygger på hvordan sliderne- eller drejeknapperne står i forhold til hinanden. Her tænker jeg rent praktisk på, at du blot definerer et felt hvorpå baggrunden ligger, f.eks. 500x300 og derpå blot placerer en mængde prikker (eller krydser). For det er vel ligegyldigt hvordan prikkerne er fordelt, når der alligevel ikke er nogen som ved hvor der findes liv.

.....just some thoughts....
Avatar billede nextstep Nybegynder
20. marts 2004 - 23:12 #6
Hej K
Det er måske en god ide at begrænse input - ved at definere nogle sliders.

Problemet er så hvordan jeg kan vise resultaterne på det indlagte billede. De kan ikke blot skydes ind helt tilfældigt, da mælkevejen som bekendt er ret flad - det vil sige at der er et ret stort mørk område over og under den, hvis den ses fra siden - det kunne gøes med  et billede set ovenfra, men der vil stadig være ret meget mørkt omkring (universet).

Med hensyn til slidernes antal - kan de begrænses - da enkle af variablerne kan gøres til konstante. Modellen mister lidt men vil stadig være brugbar. Som bekendt er astronomers forhold til tal ikke som andre menneskers!!! Når de skønner ca 100 millioner stjerner i mælkevejen er det kun et skøn - så et par millioner fra eller til... En model kan derfor aldrig blive så præcis.

Problemet med kodning er jeg ikke helt stærk i når der er tale om slidere som skal fungere sammen med formler - så forslag modtages gerne.

Hilsen Kristian
Avatar billede kanding Nybegynder
21. marts 2004 - 10:36 #7
Prøv dette script på et lile bitmap. Sæt range til hvor stort et at tal spænd du ønsker:

property pSliderPos
property pNumber

on beginsprite me
  pSliderPos = [#start:0, #slut:0, #range:100]
  pSliderPos.start = sprite(me.spriteNum).locH
  pSliderPos.slut = pSliderPos.start + pSliderPos.range
end

on exitframe me
  if the mousedown then
    mh = the mouseH
    if mh < pSliderPos.start then
      mh = pSliderPos.start
    end if
   
    if mh > pSliderPos.slut then
      mh = pSliderPos.slut
    end if
   
    sprite(me.spritenum).locH = mh
    pNumber = sprite(me.spritenum).locH - pSliderPos.start
   
  end if
end
Avatar billede _k Nybegynder
21. marts 2004 - 14:32 #8
Alt andet lige vil det vel give meget bedre overblik at se galaksen oppefra i stedet for fra siden? Systemer med liv, kan vel være hvorsomhelst?

Nu er jeg selv mere Flash- end Director-mand, så mine tekniske forslag bygger på kendskabet til det. Umiddelbart er der jo ikke den store forskel programmerne imellem, så regner med at man kan det jeg foreslår.

Som jeg ser det, kan du løse problemet med at galaksen er cirkulær og derfor skal være mørk i kanterne på 2 måder. Du kan sætte dig og manuelt placere max antal systemer med liv rundt om i galaksen. Med din ligning kan du så tænde og slukke for hver enkelt prik. Det skulle være ligetil, hvis du navngiver dem fortløbende.
Et pillearbejde, men du er sikker på at resultatet bliver nydeligt hver gang.

Den anden mulighed går ud på at lave et maske-lag. Masken placerer du over det lag hvorpå prikkerne tegnes, og masken tegnes så den svarer til galaksens form. Når du så efterfølgende placerer en masse prikker, bliver de vist hvis de ligger under masken men bliver ikke vist hvis de er udenfor.
Problemet er her, at hvis der kun er en prik og den tilfældigvis tegnes udenfor maskens dækning, ja, så er der ikke liv nogen steder (og det skulle jeg da mene, at der ellers er ;o) - til gengæld er denne måde rimelig hurtig og nem at lave.
Avatar billede kanding Nybegynder
21. marts 2004 - 17:39 #9
Director har imageLingo som kan tegne direkte på et bitmap. Teoretisk se kunne du så godt tegne flere millioner stjerner, men hvem gider at vente :-)
Prøv at tjekke funtionerne, copyPixels() og get/setPixel()
Avatar billede nextstep Nybegynder
21. marts 2004 - 21:15 #10
tak for svar -
Jeg har lige prøvet det lille script - som jeg ser det er det starten på at lave en slider - eller er der noget jeg har misforstået?

Kommentaren fra K - med at lave lidt pillearbejde - virker bed for mig. Imnidlertid er problemet at få programmet til at tænde hver prik, hvis resultatet er positivt. Et script hertil være meget velkommenet.

Ligsesom et script til f.eks. 3 slidere - som kan justere parameterne til resultat-feltet.

Jeg vil se lidt nærmere på funktionerne copy() og get/setPixel()

Håber at høre nærmere
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