verzija 0.9b
Glavna dodana sprememba, ki je bila napisana v sklopu poletne šole je modul, za dešifriranje podatkov v dnevniku klimatoloških opazovanj. Modul je zasnovan, da se ga uporablja kot unit knjižnico v Delphiju. Glavne procedure, funkcije in uporaba je naslednja:
MODULI.PAS
V izvorni kodi modula sta dve spremenljivki tipa string, ki določata poti, do datotek z šiframi različnih postaj in njih imeni. To je spremenljivka
posbase , ki ima trenutno vrednost posbase:='c:\dmrsf\podatki\evidenca.txt' . Druga spremenljivka kordbase , pa določa pot do kordinat, kjer se nahajajo določene postaje. Trenutna vrednost je kordbase:='c:\dmrsf\kordinate\kord1.txt'. (Slika 1) Uporabniškega vmesnika (User Interfacea) - prikaz klimatoloških podatkov. Uporabniški vmesnik je bil narejen samo za testne namene Uporabljen je bil pri testiranju novega modula za dešifriranje. Končna verzija uporabniškega vmesnika bo uporabljena v skopu 3D Prikaza zemljevida (glej sliko spodaj.).(Slika 2) Prikazuje originalni uporabniški vmesni, ki služi izberi območja slovenije in prikazu tega območja 2D in 3D. Prav tako, pa zna odčitati označen kraj oz. postajo na zemljevidu.
Ta funkcija služi, da dešifriranje določenega podatka iz baze klimatoloških opazovanj. Vrnjena vrednost je tipa string. Parameter
which je za določevanje iskanega podatka, parameter line pa je za določanje vrstice v kateri išče. Ta parameter dobimo s pomočjo funkcije getline. Primer uporabe:Var s: stirng;
s:=Moduli.podatek(4,13);
Parametri which so naslednji:
1 – postaja
2 - stanje barometra ob 7 uri
3 - stanje barometra ob 14 uri
4 - stanje barometra ob 21 uri
5 - maksimalna temperatura
6 - minimalna temperatura
7 - min. temp. 5cm
8 - temp suhega termometra ob 7 uri
9 - temp suhega termometra ob 14 uri
10 - temp suhega termometra ob 21 uri
11 - temp mokrega termometra ob 7 h
12 - temp mokrega termometra ob 14 h
13 - temp mokrega termometra ob 21 h
14 - led na krpici ob 7h
15 - led na krpici ob 14h
16 - led na krpici ob 21h
17 - smer vetra ob 7h
20 - hitrost vetra ob 7h
18 - smer vetra ob 14h
21 - hitrost vetra ob 14h
19 - smer vertra ob 21h
22 - hitrost vertra ob 21h
23 - stanje tal ob 7h
24 - stanje tal ob 14h
25 - stanje tal ob 21h
26 - vidnost ob 7h
27 - vidnost ob 14h
28 - vidnost ob 21h
29 - trajanje soncnega obsevanja
30 - količina oblačnosti ob 7h
31 - količina oblačnosti ob 14h
32 - količina oblačnosti ob 21h
function smer(veter :integer): string;
Ta funkcija se rabi v sklopu prejšnje funkcije, za določevanje smeri vetra.
procedure initbase(line: integer);
Procedura initbase s pomočjo spremenljivke basename iz baze prebere celotno vrstico, katero podamo v obliki parametra line. Konkretnega namena ta procedura še nima.
function getline(num: integer):integer;
Procedura getline je funkcija k v datoteki s podatki poišče iskani datum, ki ga vnesemo s pomočjo parametra num, ki je tipa integer. Vrne pa na št. vrstice v kateri se nahajajo podatki tega datuma. S vrnjenim podatkom, lahko potem operiramo s funkcijo podatek, ki nam vrne določen podatek iz te vrstice.
Uporaba:
// iščemo po datumu 1.2.1987
var vrstica: string;
vrstica:=moduli.getline(9870201);Datum se vnaša po naslednjem primeru: leto(3 mesta)mesec(2 mesti)dan(2 mesti)
Primer: 9870621 – 21.6.1987
function posname(vrst: integer):string;
Naslednja funkcija ti vrne ime postaje, ki je šifrirana pod številko, ki jo podamo v obliki parametra vrst. Funkcija na vrne string v katerem se nahaja ime kraja oz. postaje pod to številko. Ta funkcija po v prihodnje prišla v sklop funkcije podatek.
function gausxy(x,y: integer):string;
Funkcija gausxy se konkretno nanaša na že narejeni interface (DMRSF) o izberi območja. Iz interfacea dobimo Gauss-Krugerjeve kordinate, ki jih uporabimo v parametrih x,y funkcije gausxy. Vrnena vrednost je string, ki vrne ime postaje oz. kraja na kliknjeni točki.
Izpopolnjen 3D prikaz Slovenije
Na začetek
Napisal: Andraž Sraka