Avatar billede squazz Novice
31. oktober 2013 - 01:17 Der er 3 kommentarer og
1 løsning

Problemer med "tilfældig" udvælgelse af billeder

Jeg sidder og arbejder på et script der skal bruges lokalt. For at vise jer hvordan det virker, har jeg valgt at lægge det op på min egen server: Squazz.dk/event

Koden kan findes på pastebin her: pastebin.com/VwmEB7U1

Kort om idéen med scriptet:
Tanken er at der først genereres en væg fyldt med billeder. Nogle af disse billeder er statiske billeder (af den vestlige forestilling om hvordan Jesus Kristus ser ud, men lad nu hele den del ligge). Derudover bliver væggen fyldt med portræt-billeder af deltagere til vores event. Idéen er så at deltager-billederne 1-for-1 skal udskiftes med nye billeder af deltagere som ikke bliver vist på skærmen i øjeblikket (første prioritet, anden prioritet er at sørge for at alle billeder bliver vist mindst én gang).

Teknisk om scriptet:
Koden er skrevet som den er da scriptet skal vises på flere forskellige størrelser af skærme. Nogle 16:9, nogle 4:3, nogle 9:16 og andre igen med helt andre mål.
Skærmene styres af hver deres OSX computer/laptop, og scriptet bliver derfor afviklet i en HTML fil med tilhørende lokal mappestruktur (ingen central styring, ingen databaser, ingen server-platform).


Problemerne
Jeg har pt. 2 problemer jeg ikke helt kan adressere

1. Koden går i en evig løkke hvis der er for få tiles (hvis vinduet er for lille, eller er for aflangt eller højt i forhold til den anden side). Jeg har på fornemmelsen at det er min "positionJesusImage()" der giver mig problemer her, jeg kan dog ikke helt se hvad det er jeg egentligt gør forkert

2. Min "changeImage()" skulle meget gerne kun udskifte billederne på væggen med nogen der ikke bliver vist i øjeblikket. Dette sker dog ikke rigtigt, efter nogen tid begynder det samme billede at blive vist flere gange


Jeg håber nogen kan hjælpe mig videre, nu har jeg set mig så blind på koden at jeg ikke rigtigt kommer videre lige foreløbig :/ Skriv endeligt hvis der er noget jeg ikke har gjort klart. Både i opslaget her, men også i koden. Vi øver os vel altid på at skrive koden bedre og pænere ;)
Avatar billede squazz Novice
01. november 2013 - 16:13 #1
Jeg har nu fundet en løsning på mit problem med den evige løkke. Det gik op for mig at jeg forsøgte at indsætte billeder hvor det ikke var muligt. Jeg havde nemlig sat restriktioner der gjorde at scriptet i nogle tilfælde ikke havde mulighed for at indsætte alle de billeder jeg bad om. Løsningen her var at forsøge at finde en position til billedet x-antal gange, og derefter at give op og gå videre til næste billede

Jeg har stadig problemer med at changeImage() ikke udfører arbejdet som forventet :/
Avatar billede anri Novice
02. november 2013 - 17:17 #2
Uden at have gravet ret meget i din kode, er det så ikke fordi du løber ind i den der MaxTries grænse og så retunerer det billede du lige er ved.

Hvis det er derfor, så skal vi have fundet ud af hvorfor du ikke får byttet billederne ud i din nowShowing buffer.
Avatar billede squazz Novice
19. november 2013 - 12:31 #3
Undskyld det utroligt sene svar.

Jeg har kigget noget videre på koden, og jo, det er fordi jeg løber ind i min MaxTries, det mærkelige er bare hvorfor jeg gør det. Jeg har kigget koden igennem flere gange, og kan simpelthen ikke finde ud af hvad det er der gør det.

Jeg har fundet lidt småfejl, og har rettet mit pastebin-link til, men min kode ender stadig i MaxTries, hvilket jeg ikke kan regne ud hvorfor sker :/
Avatar billede squazz Novice
25. juni 2014 - 01:59 #4
lukkes, koden og problemstillingen er ikke aktuel længere
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
Vi tilbyder markedets bedste kurser inden for webudvikling

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