Podatkovni standard XML, uporaba standarda xml v geodeziji (GML in SVG), ontologije, objektno programiranje (programiranje razredov in objektov, knjižnice razredov, izdelava okenskih programov z grafiko, baze podatkov, jezik sql, načrtovanje in programiranje podatkovnih baz), izdelava porazdeljenih informacijskih sistemov (varnost podatkov, elektronski digitalni podpis, avtentikacija, šifriranje podatkov, standardi za varno izmenjavo podatkov, zlorabe podatkov), spletni in storitveni programi (xml spletne storitve, wsdl - jezik za zapis spletnih storitev, soa - servisno orientirana arhitektura, uporaba spletnih storitev v geodeziji), uporaba metod umetne inteligence v geodeziji, strojno učenje z nevronskimi mrežami.

Urnik:
torek, 13 - 16 (RU II/3)
četrtek, 8 - 11 (RU I/5)

Govorilne ure:
ponedeljek 9 - 10, soba 035

Informacije:
matevz.dolenc@fgg.uni-lj.si

torek, 1.10.2019

četrtek, 3.10.2019

  • Uvod v Python
  • Izvorna koda:
  • Naloga: Namestitev programskega sistema Python na domačem računalniku.

torek, 8.10.2019

  • Uvod v Python:
    • Zagon Python skript iz ukazne vrstice.
    • Seznami v Pythonu.
    • for zanka
  • Uvoz tekstovnih podatkov v Excel in risanje razpršenih grafov.
  • Izvorna koda:

četrtek, 10.10.2019

  • Uvod v Python:
    • for in while zanka
    • izpis v datoteko
  • Uvoz tekstovnih podatkov v Excel in risanje razpršenih grafov.
  • Izvorna koda:

torek, 15.10.2019

Naloga: V programskem jeziku Python izdelajte program za vnos podatkov o parcelah (katasterska občina, parcelna številka, lastnik, površina, itd.).

  • Program naj omogoča vnos poljubnega števila podatkov.
  • Vnešeni podatki naj se ob koncu vnosa izpišejo na zaslon in v izhodno tekstovno datoteko.
  • Program naj izračuna skupno površino podanih parcel.
  • Izvedba programa mora uporabiti izdelano funkcijo.
  • Program naj omogoča interaktivni vnos podatkov.

Primer rešitve: parcela.py

četrtek, 17.10.2019

torek, 22.10.2019

Python:

Podatkovni standardi:

  • XML - Extended Markup Language
  • JSON - JavaScript Object Notation
  • IFC - Industry Foundation Classes

Primeri:

  • Izdelajte XML/JSON dokument za shranjevanje poljubnega poligonalnega prereza. Točke prereza so podane z oznako in dvema koordinatama: x in y. Rešitve: xml | json
  • Izdelajte XML dokument, ki vsebuje podatke o dveh geografskih točkah (ime/naslov, koordinate, nadmorska višina)

Povezave:


četrtek, 24.10.2019

Predavanja odpadejo zaradi odsotnosti predavatelja. Nadomeščanje bo izvedeno v dogovoru s študenti.


Naloga: V programskem jeziku Python izdelaj program. Podatki za nalogo za dostopni v TXT datoteki.

Podatki v datoteki so:

  • 1. vrstica: število vrstic s podatki
  • naslednje vrstice:
    • 1. stolpec: ime kraja stalnega bivališča študenta
    • 2. in 3. stolpec: x in y koordinati kraja
    • 4. stolpec: število študentov, ki so iz kraja
    • 5. stolpec: oddaljenost kraja od Ljubljane v km

Funkcionalne zahteve:

  • Program podatke prebere iz tekstovne in jih zapiše v izhodno datoteko druge oblike. Oblika izhodne datoteke ni predpisana.
  • Program naj za podatke izračuna oz. oceni ter izpiše na zaslon naslednje količine (vse količine se izračunajo za en povprečen mesec v študijskem letu):
    • Skupno število prevoženih kilometrov, če se vsi študenti vozijo v Ljubljano vsak dan.
    • Skupno število prevoženih kilometrov, če upoštevate, da se v Ljubljano vozijo le študenti, ki imajo stalno bivališče v kraju, ki je oddaljeno od Ljubljane največ 50 km.
    • Za zgornja primera izračunajte za vsak primer še skupno porabo goriva in skupne stroške goriva. Pri tem upoštevajte povprečno porabo goriva (0.9 l/km) in povprečno ceno za liter goriva (1.4 EUR/l)
  • Program naj v izhodno tekstovno datoteko izpiše podatke za grafični prikaz porabe goriva v odvisnosti od kraja. Pri tem upoštevajte, da se vsak študent pelje v Ljubljano sam. Za grafični prikaz uporabite program MS Excel.

Rešitev naloge: izpitna-naloga.zip

torek, 29.10.2019

Python:

  • Branje in zapisovanje XML datotek.

Izvorna koda:

torek, 5.11.2019

Naloga: Izdelajte Python program, ki podane podatke v tekstovni datoteki pretvori v KML zapis. KML datoteko poglejte v programu Google Earth.

Podatki (glej primer KML-podatki.txt):

  1. vrstica: center x-centra y-centra # ime kraja in x in y koordinata kraja v decimalnih stopinjah
  2. vrstica: n # število podanih krajev (celo število)
  3. ... 3 + n vrstica: kraj x y # kraj in x in y koordinata kraja v decimalnih stopinjah

Navodila:

  1. Pripravite tekstovno datoteko s podatki oz. uporabite podatke v datoteki KML-podatki.txt. Za podatke si lahko npr. sestavite s podatki o koordinatah krajev od koder so študenti v letniku.
  2. V programu Google Earth pripravite preprost primer prikaza vaših izbranih podatkov. V programu shranite podatke v datoteko tipa KML (ne KMZ). V ustvarjeni datoteki preverite način zapisa uporabljenih podatkov. Natančno razlago zapisa KML datoteke lahko poiščete v KML dokumentaciji
  3. Izdelajte program, ki ga zahteva naloga. Delovanje programa preverite na testnih podatkih.

Datoteke:

Rešitev:


četrtek, 7.11.2019

Naloga: Izdelaj program za menjalnico. Programske zahteve:

  • program naj prebere trenutno tečajno listo iz XML datoteke
  • za podano vrednost v EUR naj program izpiše vrednosti v vseh ostali valutah
  • za podano vredno v izbrani valuti naj program izračuna ustrezno vrednost v EUR

Pomoč:

  • Tečajno listo shranite na lokalni disk.
  • V XML datoteki lahko odstranite atribute korenskega XML elementa.

Podatki:

Rešitev:

  • Primer lokalno shranjene tečajne liste z odstranjenim imenskim prostorom, dtecbs.xml
  • Preprosta rešitev z lokalno datoteko in odstranjenim imenskim prostorom - implementiran samo prvi del naloge, ki za podan znesek v EUR izpiše vrednost v vseh ostalih valutah, menjalnica-0.py
  • Preprosta rešitev z lokalno datoteko in odstranjenim imenskim prostorom, menjalnica-1.py
  • Rešitev z branjem XML datoteke z Interneta, uporaba 2-D seznama, menjalnica-2.py

četrtek, 14.11.2019

SciPy: knjižnice NumPy, SciPy in matplotlib

Python in SQL:

Datoteke:

četrtek, 21.11.2019

Ponovitev programiranja v programskem jeziku Python.

Naloga:

  • Podatki:
  • Naloga:
    • V programskem jeziku Python izdelajte program:
      • Program na začetku izpiše na zaslon: datum, vpisno številko študenta ter ime in priimek študenta.
      • Program prebere datoteko s podatki in jih shrani v ustrezne spremenljivke.
      • Program prebrane podatke izpiše na zaslon v obliki tabele.
      • Program izračuna oz. določi povprečno, minimalno in maksimalno višino opazovalnic ter vrednosti izpiše na zaslon na dve decimalni mesti natančno.
      • Program pripravi podatke za uporabo v programu tocke-xml2kml.py.
    • Izračunane oz. določene količine preverite v programu Excel. Podatke prenesite v program Excel iz tekstovne datoteke, ki ste jo pripravili v ta namen. V programu Excel narišite graf višin opazovalnic. Tabela v programu Ecel mora vključevati tudi vpisno številko študenta ter ime in priimek študenta.
    • S programom tocke-xml2kml.py ustvarite KML datoteko. Pripravite sliko v formatu JPG s prikazom opazovalnic v programu Google Earth.

torek, 3.12.2019

Alternativni načini pisanja dokumentov:

Internet in svetovni splet:

torek, 10.12.2019

Ogledali si bomo kako vzpostavimo in uporabimo visoko-propustno računsko okolje, ki je primerno za izvajanje različnih parametričnih študij.

Datoteke:

četrtek, 9.1.2020

Tokrat bomo obravnavali dve različni temi:

  • Odprto kodni programi (pdf)
  • David Weinberger, “Everything is Miscellaneous: The Power of the New Digital Disorder” (pdf)

četrtek, 16.1.2020

V programskem jeziku Python izdelajte program.

Podatki:

  • Podatki so dostopni tukaj.
  • Podatki v datoteki so:
    • 1. vrstica: Naslov tekmovanja
    • 2. vrstica: Disciplina
    • 3. vrstica: Število rezultatov
    • Naslednje vrstice:
      • Štartna številka
      • Priimek
      • Ime
      • Država
      • Čas [m:ss.dd]
      • Čas v decimalnih sekundah

Funkcionalne zahteve:

  • Program na začetku izpiše vaš priimek in ime ter vpisno številko
  • Program podatke prebere iz tekstovne datoteke in jih shrani v ustrezne spremenljivke.
  • Program podatke izpiše:
    • ... na zaslon v obliki tabele.
    • ... v XML datoteko. Oblika XML datoteke ni predpisana
  • Program naj določi in na zaslon izpiše:
    • Podatke najhitrejše tekmovalke
    • Povprečen čas vseh tekmovalk in povprečen čas tekmovalk s štartnimi številkami od 16 do 22
  • Izračunane količine preverite v programu MS Excel.

Oddaja naloge:

Vsebino izdelane naloge zapakirajte v paket .zip. Zip datoteko obvezno poimenujte takole: op-2019-priimek-ime-vpisnaštevilka.zip. Nalogo oddate tako, da zip datoteko pošljete po elektronski pošti na naslov: matevz.dolenc@fgg.uni-lj.si

četrtek, 23.1.2020

Ponovitev vsebin in priprava na izpit.


Copyright © Matevž Dolenc. All rights reserved.