KLIMATSKI MODEL SLOVENIJE - DMRSF

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'.

Userinterface1.jpg (51912 bytes)

(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.).

 

Userinterface2.jpg (56389 bytes)

(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.


Modul vsebuje naslednje funkcije (procedure):

function podatek (which: integer; line:integer):string;

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);
// v 13 vrstici baze vrne podatek o stanju barametra ob 14h

 

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:
var vrstica: string;
vrstica:=moduli.getline(9870201);
// iščemo po datumu 1.2.1987

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