Præsentation er lastning. Vent venligst

Præsentation er lastning. Vent venligst

Claus Brabrand, ITU, Denmark Mar 17, 2009Projekt: “Visualisering” Claus Brabrand [ ] ( “FÅP”: First-year Project Course, ITU, Denmark )

Lignende præsentationer


Præsentationer af emnet: "Claus Brabrand, ITU, Denmark Mar 17, 2009Projekt: “Visualisering” Claus Brabrand [ ] ( “FÅP”: First-year Project Course, ITU, Denmark )"— Præsentationens transcript:

1 Claus Brabrand, ITU, Denmark Mar 17, 2009Projekt: “Visualisering” Claus Brabrand [ brabrand@itu.dk ] ( “FÅP”: First-year Project Course, ITU, Denmark )

2 [ 2 ] Claus Brabrand, ITU, Denmark Mar 17, 2009Projekt: “Visualisering”

3 [ 3 ] Claus Brabrand, ITU, Denmark Mar 17, 2009Projekt: “Visualisering” Formålet med del-projekt #1 ”visualisering” er at få begyndt på design og programmering i jeres projekt: Første skridt er at kunne vise vej- datasættet grafisk, ved at tegne vejene på en Java GUI-komponent (fx. ” javax.swing.Jpanel ”). Projekt: ”Visualisering” ”Danmarkskort: Visualisering, Navigation, Søgning og Ruteplanlægning”

4 [ 4 ] Claus Brabrand, ITU, Denmark Mar 17, 2009Projekt: “Visualisering” Projekt: ”Visualisering” Eksempel på et skærmbillede med alle Sjællands veje, tegnet i forskellige farver (afhængig af vejens type): Motorveje: røde Hovedveje: blå Stier: grønne (snedigt :-) Andre veje: sorte

5 [ 5 ] Claus Brabrand, ITU, Denmark Mar 17, 2009Projekt: “Visualisering” Projekt: ”Visualisering” Jeres visualisering kan laves på mange forskellige ambitionsniveauer… NB: Det er en fordel at udarbejde den gradvis (så I starter med at lave simple faciliteter først og udvider efterhånden) Her er følger nogle krav og muligheder…:

6 [ 6 ] Claus Brabrand, ITU, Denmark Mar 17, 2009Projekt: “Visualisering” Projekt: ”Visualisering” 1)+2) 1) Lav et Java-program der kan tegne alle veje fra et givet datasæt eller udtræk (fx. Valby, Charlottenlund, Sjælland, hele datasættet), på en GUI-komponent (fx. Jpanel ) af en …på forhånd givet fast størrelse. 2) Som ovenfor, men vejene tegnes med forskellige farver (afhængig af vejtype).

7 [ 7 ] Claus Brabrand, ITU, Denmark Mar 17, 2009Projekt: “Visualisering” Projekt: ”Visualisering” 3) 3) Tegningen skal kunne tilpasse sig panelets størrelse når det ændres (ved at vinduet maksimeres eller bliver trukket større eller mindre). Klassen skal i hvert fald have disse metoder: public int gFromX(double x) (Omregner fra UTM32 øst-koordinat x i meter til grafikkens vandrette koordinat i pixels) public int gFromY(double y) (Omregner fra UTM32 nord-koordinat y i meter til grafikkens lodrette koordinat i pixels)

8 [ 8 ] Claus Brabrand, ITU, Denmark Mar 17, 2009Projekt: “Visualisering” Hints til 3) Hint A: Det er nyttigt at indføre en klasse ” Coordinates ”: …der er ansvarlig for omregning mellem: vejdatasættets koordinater (UTM28 / meter) skærmens koordinater (JPanel / pixels) Hint B: Det er hensigtsmæssigt at lave et nyt Coordinates -objekt hver gang vinduet har skiftet størrelse: E.g., kan JPanelets paint-metode lave et nyt Coordinates-objekt hver gang den bliver kaldt (idet den kaldes hver gang vinduet skifter størrelse).

9 [ 9 ] Claus Brabrand, ITU, Denmark Mar 17, 2009Projekt: “Visualisering” Projekt: ”Visualisering” 4) 4) Man skal kunne zoome ind på vejnettet ved at trække med musen (fra hjørne-til-hjørne i det delrektangel af vinduet der ønskes fokuseret på). NB: Zoom betyder bla. at kun nogle af vejstykkerne skal tegnes, og dels at koordinatomregningerne skal ændres lidt.

10 [ 10 ] Claus Brabrand, ITU, Denmark Mar 17, 2009Projekt: “Visualisering” Hint til 4) Hint: Eftersom man skal kunne omregne fra musekoordinater til vejdatakoordinater skal der bruges flere metoder i Coordinates : public double xFromG(int gX) (Omregner fra grafikkens vandrette koordinat gX i pixels til UTM32 øst-koordinat i meter) public double yFromG(int gY) (Omregner grafikkens lodrette koordinat gY i pixels til UTM32 nord-koordinat i meter)

11 Claus Brabrand, ITU, Denmark Mar 17, 2009Projekt: “Visualisering” Required: 1) – 4) Optional: 5) – 8)

12 [ 12 ] Claus Brabrand, ITU, Denmark Mar 17, 2009Projekt: “Visualisering” Projekt: ”Visualisering” 5) + 6) 5) Man skal kunne zoome ud igen (fx. blot ved at trykke på tasten ’o’). Hint: Konstruktoren i et JPanel bør udføre this.setFocusable(true) hvis panel- et skal kunne opdage tastetryk. Selve reaktionen på tastetryk sker i en KeyListener som man knytter til panelet. 6) Som ovenfor, men med mulighed for at scrolle i kortet (mod øst, syd, vest el. nord);e.g. via piletasterne. o 

13 [ 13 ] Claus Brabrand, ITU, Denmark Mar 17, 2009Projekt: “Visualisering” ( / ) Projekt: ”Visualisering” 7) + 8) 7) Når man flytter (ikke klikker) musen hen over kortet, vises navnet på den nærmeste vej i en statuslinje 8) Der kan tilføjes menuer til at vise kun bestemte typer veje (e.g. stier, motorveje, hovedveje). Alternativt: kun de veje som er relevante for bestemte typer af transportmidler: e.g., ingen stier for biler e.g., ingen motorveje for cykler Rued Langgaards Vej

14 [ 14 ] Claus Brabrand, ITU, Denmark Mar 17, 2009Projekt: “Visualisering” Projekt: ”Visualisering” Features: Find gerne selv på flere… :-) Submission: hver Fredag (kl. 15 – 16): Projekt-dagbog Arbejds-blade Deadline: Fredag den 3. April (kl. 09:00) Præsentation: Fredag den 3. April (+demo): [ 09:00-10:20 Hvid/Gul/Orange/Rød ] [ 10:40-12:00 Grøn/Blå/Brun/Sort ]

15 [ 15 ] Claus Brabrand, ITU, Denmark Mar 17, 2009Projekt: “Visualisering” Projekt: ”Visualisering” Aflevering: én zip-fil (via mail til CB & KS): En beskrivelse (ca. 2 sider) af hvilke visualiserings- faciliteter der er valgt og programmeret i første omgang (inkl. kort begrundelse). En beskrivelse (ca. 4 sider) af hvordan visualisering- erne er implementeret, med en tegning af skærm- billedet der forklarer koordinatomregningen. Ovenstående skal være indeholdt i ét dokument (inkl. forside der angiver gruppens farvekode og medlemmer, dato, kursusnavn samt år). Java-koden der implementerer visualiseringerne.


Download ppt "Claus Brabrand, ITU, Denmark Mar 17, 2009Projekt: “Visualisering” Claus Brabrand [ ] ( “FÅP”: First-year Project Course, ITU, Denmark )"

Lignende præsentationer


Annoncer fra Google