• Nie Znaleziono Wyników

Zagadnienia komputerowej realizacji mapy rejonu sieci kolejowej - cześć I

N/A
N/A
Protected

Academic year: 2022

Share "Zagadnienia komputerowej realizacji mapy rejonu sieci kolejowej - cześć I"

Copied!
16
0
0

Pełen tekst

(1)

ZESZYTY NAUKOWE POLITECHNIKI ŚLĄSKIEJ Seria: TRANSPORT z. 16

199*' Nr k o l . 1 1 0'

Roman KONIECZNY. Stanisław KRAWIEC

ZAGADNIENIA KOMPUTEROWEJ REALIZACJI MAPY REJONU SIECI KOLEJOWEJ - CZ£SC I

Str iszczenie. Przy realizacji symulatora ruchu pociągów przyjęto ogólną koncepcję, że wyniki symulacji wizualizowane będą przy pomocy modułu wyświetlającego aktualną sytuację na graficznej mapie odwzorowywanego rejonu sieci kolejowej. W artykule przedstawiono założenia wstępne, strukturę danych wejściowych i wyjściowych oraz strukturę programu PREMAPA. Wymieniony program został zrealizowany w języku Turbo PASCAL dla potrzeb odwzorowania dużego rejonu sieci kolejowej na ekranie monitora. Program PREMAPA przetwarza dane źródłowe opisujące mapę dowolnego rejonu sieci na zbiór rekordów wyświetlanych na monitorze przez program MAPA, będący tematem części II niniejszego artykułu.

1. Wpr owadzenle

W ramach programu RP. 1 .09 "Rozwój języków. metod oraz podstaw formalnych oprogramowania" zrealizowano w latach 1986-90 komputerowy symulator ruchu pociągów Cl,2,3,4,.5,6,73. Przy realizacji symulatora przyjęto ogólną koncepcję, że wyniki symulacji wizualizowane będą za pomocą modułu wyświetlającego aktualną sytuację na graficznej mapie odwzorowywanego rejonu sieci kolejowej, przy czym rozmiary tej mapy wielokrotnie przekraczać muszą fizyczne rozmiary ekranu komputera.

Problem graficznej wizualizacji wyników symulacji okazał sie oddzielnym problemem do rozwiązania, szczególnie w aspekcie realizacji dynamicznego oprogramowania mapy, bowiem obraz na ekranie monitora tworzyć muszą dwa zasadnicze składniki: statyczne, przesuwne tło oraz bieżące wyniki symulacji nakładane na tło. W niniejszym, dwuczęściowym artykule przedstawiono rozwiązanie tego problemu dla potrzeb symulatora ruchu pociągów. Problematyka realizacji dużych map z nakładanymi dynamicznie na siebie obrazami obejmuje nie tylko mapy kolejowe, lecz także dowolne inne.

2. Założenia wstępne programu PREMAPA

Dla realizacji programu PREMAPA zostały poczynione następujące założeni a :

(2)

10-4 Roman Konieczny, Stanisław Krawiec

- program PREMAPA czyta wejściowy plik tekstowy z danymi źródłowymi opisującymi mapę;

- wejściowy plik tekstowy z danymi źródłowymi jest przygotowany za pomocą, dowolnego edytora tekstu mogącego wygenerować plik w kodzie ASCII;

- dane w pliku wejściowym nie musza, być uporządkowane;

- program PREMAPA zwolniony jest z merytorycznej Cnp. w sensie kolejowymi) kontroli danych wejściowych z uwagi na łatwa, kontrolę tychże danych na wyś wi et1anej mapi e ;

- wyjściem z programu PREMAPA jest uporządkowany plik tekstowy składający się z rekordów elementarnych, na podstawie których odpowiedni moduł loglanowski wbudowany w symulator ruchu pociągów lub niezależny program będzie wizualizował dane zawarte w tym plik*u;

uporządkowanie pliku wyjściowego zakłada:

• pogrupowanie rekordów poszczególnych typów elementarnych,

• pogrupowanie i posortowanie Cwedług numerów lub według atrybutów współrzędnej na mapie} poszczególnych typów rekordów elementarnych, - na obecnym etapie rozwoju symulatora ruchu pociągów zakłada się obecność

następujących symboli na mapie:

• odcinków,

• połączeh, _• semaforów,

• mikrorelacji Cuwzględniając w tl.e: głowice i relacje}.

• napisów graficznych,

• napisów ąlfanumerycznych,

rozmiary odwzorowywanej mapy wielokrotnie przekraczają fizyczne rozmiary ekranu komputera, a jedynym ograniczeniem odnośnie do wielkości mapy oraz stopnia jej szczegółowości są zasoby dostępnego komputera.

Przykładowy fragment mapy rejonu sieci kolejowej przedstawiono na rys.i.

Rys.l. Przykładowy fragment mapy rejonu sieci kolejowej Cuproszczenie - bez wszystkich niezbędnych semaforów}

Fig.l. An exakoplarv fragment of railway net area map

(3)

Z a g a d n ie n ie kom puterowej r e a l i z a c j i

3. Struktura danych we iści owych programu PREMAPA

Strukturę statyczną danych opisujących mapę dowolnego rejonu ..i- można przedstawić następująco:

WE = -CR , R , R , R . R ,R ,R ,R ,R ,R >

L P R S F M T N G R

- Zbiór rekordów typu L - opis odcinków prostych mapy:

R = <ZL.DL,<ZL : ae DL>>

gdzie:

ZL = < REKORD . . . . ,REKORD >

L L

1 I L O S Ć _ L

DL = < T L .XI , Y1 .X2 ,Y2 .STYL., KOM : i =1.. . . . I LOŚĆ_L>

l i l i i t l

ZL <L> - znak określający typ rekordu i

ZL < 1 ... SM> - współrzędne początku odcinka

XIi

21- : -Cl . . . . , WM> - współrzędne początku odcinka

Y &

L

ZL <1, . . . ,SM> - współrzędne końca odcinka

X 2

ZL <1 , . . . ,WM> - współrzędne końca odcinka

Y 2v

STYL : INTEGER - parametr stylu lub koloru linii V

KOM : < “A " ..."Z"} - komentarz Copls przeznaczenia linii}

l

CXI . Y1}___________________ cxa. Y2D STYL

SM - szerokość mapy, WM - wysokość mapy

- Zbiór rekordów typu P - opis połączeń między sąsiednimi głowicami mapy

R = < Z P ,D P ,<ZP : be DP>>

? b

gdzi e:

ZP = <REKORD .... .REKORD >

P i I L O S Ć _ P

DB = CTP , NRPOL ,XP . YP , XR , YR , KOM : i =1 ... . . ILOSĆ_P>

i i i V X. X. I ZP : <P> - znak określający typ rekordu

TP L

ZP ■ <1, . . . ,ILOSĆ_P> - numer połączenia

N R P O L

zp • <1 , . , SM> - współrzędne początku połączenia

KP ‘t #

ZP : <1,. - . ,WM> - współrzędne początku połączenia

Y P

(4)

106 Roman Konieczny, Stanisław Krawiec

• <1, ,SM> - współrzędne końca połączenia

X RL

ZP - < 1 ...WM> - współrzędne końca połączenia

Y R

KOM ..,"Z"> ~ komentarz

CXI . Yl} CX2.Y2D

środek NRPOL

początk u połączeni a

L i

dł const środek

końca połączenia

- Zbiór rekordów typu S - opis semaforów na mapie

R = <ZS.DS.-CZS : ce D S »

s c

gdzie:

ZS = <REKORD ,. . . ,REKORD s s >

1 I L O Ś Ć _ S

DS - <TS ,NRSEM ,XP ,YP ,X R . ,Y R . » RSEM .KOM: i =1, ILOS0_S}

i - L I L I I L l

ZS <S> - znak określający typ rekordu

T SV

ZS <1, . . ’ ,ILOSĆ S> - numer semafora

N R S E M . ~

L

ZS - <1,. ,SM> - współrzędne środka podstawy semafora

X Pv

ZS : <1,. . . »WM> - współrzędne środka podstawy semafora

i

ZS : <1,. . . ,SM> - współrzędne środka tarczy semafora

X R

ZS ZS

<1,. . . .WM> - współrzędne środka tarczy semafora :INTEGER - dugość promienia tarczy semafora Z S < " A " , . . . . " Z ” } - k o m e n t a r z

K O M

Podstawowe pokazywane kształty semafora są następujące:

Sygnał "WOLNA DROGA"

C zi el oneD

sygnał ZASTĘPCZY Cczerwone)

(5)

Zagadnienie komputerowej realizacji. 107

Układ punktów lokali żujących semafor na mapie jest następujący:

i RSEM

XP. YP

C ś r. odek pods i a wy}

XR, YR

i Ośrodek tarczyk

- Zbiór rekordów typu F - opis semaforów fikcyjnych [12,133 mapy rejonu

R = <ZF.D F . C Z F - de DF>>

f d

gdzie:

ZF * CREKORD . .REKORD >

F F

& I L O S Ć _ F

DF = CTF , NRSEM. , XP , YP ,XR , YR , RSEM .KOM : i =1 , . . . .ILOŚĆ F>

l l Ł l t ' t i i ~

2Ft s : CF> - znak określający typ rekordu

V

ZF <1,...»ILOŚĆ F> - numer semafora

N l t S C M

i

ZFx|ł : <1 . . . . ,SM> - współrzędne środka podstawy semafora v

Z F ^ 7 ; <1 ,. . . , WM> - współrzędne środka podstawy semafora i.

Z F ^ : <1*. . . ,SM> - współrzędne środka tarczy semafora ZFyR : il ,... ,WM> - współrzędne środka tarczy semafora

V

2Fr s e m : INTEGER - dugośó promienia tarczy semafora

u

ZF : {"A",...,"Z”>* - komentarz

K O M

v

Semafor fikcyjny, obecny tylko w modelu symulacyjnym ruchu pociągów, odznacza się wizualnie brakiem podstawy oraz nogi. Posiada tylko sama tarczę wskazującą odpowiedni sygnał. Aby zorientować semafory w płaszczyźnie mapy, wymagane jest podanie podanie współrzędnych XP, YP Cfikcyjnej podstawy!).

- Zbiór rekordów typu M - opis mikrorelacji głowic na mapie rejonu sieci

R = <ZM.DM.CZM : ee DM>>

M o

gdzie:

ZM = CREKORD ,. . . .REKORD >

M U

i f I L 0 Ś C _ 0

^ X L O f i C _ M < j>

J = *

DM = CTM. ,NRGLO. .MRMREL .XI .Y1 .X2 .Y2 ,KOM : i =1 ...ILOŚĆ_M>

Ł V V 1 1 Ł . Ł 1

(6)

108 Roman Konieczny, Stanisław Krawiec

ZM : <M> - znak określający tvp rekordu

Tlil

ZM : -Cl ,...,ILOŚĆ G> — numer głowicy, do której należy mikrorelacja

N 5 0 L 0

V

ZM <1,...,ILOSĆ MCNRGLO.ll — numer mikrorelacji na głowicy NRGLO

N R M K C L . t

l

ZM r <1». . . ,SM> - współrzędne początku odcinka mikrorelacji i

ZM r : WM> — współrzędne początku odcinka mikrorelacji i

ZM : <1,...,SM> - współrzędne końca odcinka mikrorelacji i

ZM : <1,...,WM> - współrzędne końca odcinka mikrorelacji i

ZS : < MA " ,. . . , ~ komentarz

4

KOliŁ

Mikrorelacje s ą wizualizowane elementami relacji na poszczególnych głowicach stacyjnych.

*- Zbiór rekordów typu T - opis tekstów, które mają być przedstawione na mapie w sposób graficzny

R = <ZT,DT,<ZT - fe DT>>

t i

gdzie:

ZT = <REKORD .... .REKORD >

T T

4 I L O S Ć _ T

DT = < T F . ,XP »Y P . , WYS. »SZER .ODSTĘP .RODZAJ , RA. .TEKST , : i *1.... .ILOŚĆ T>

1 1

X

1 1

X X X X ~

ZT <T> - znak określający typ rekordu

i

ZTxp : <1.. . . .SM> - współrzędne położenia początku tekstu na mapie i

ZTyp : <1,...,WM> - współrzędne położenia początku tekstu na mapie i

ZTvyg •* <1.. . - ,WM> - wysokość znaków

i

ZT <1 , . . . ,SM> — szerokość znaków SZER

Z T -Cl , . . . ,SM> - odstęp między znakami w tekście

O D S T Ę P X

U r o d z a j : *NlfcGER - styl linii lub kolor linii tworzących odcinki

i

elementarne odwzorowujące tekst ZT

T E K S T

i Z T ^ : <1,2,3> - rodzaj alfabetu Cprosty, pochyły.ekstrai

i

ZT,rEKST i i "A"... “Z">* - zasadniczy tekst do wyświetlenia

(7)

Zagadnienie komputerowej realizacji. 109

- Zbiór rekordów typu N - opis tekstów, które mają byó przedstawione na mapie w sposób alfanumeryczny Cniepowiększalnyj

R = <Z N ,D N ,<ZN : ge DN>>

n g

gdzie:

ZN = <REKORD REKORD >

i I L O S C _ N

DN = <TN ,XP , YP , NAPIS : i =1 , . . . .ILOŚĆ N>

V L 1 V

ZN : <N> - znak określający typ rekordu L

ZN < 1 ... SM> - współrzędne położenia początku tekstu na mapie 23^ -Cl,... ,WM> - współrzędne położenia początku tekstu na mapie

i

ZN -CA",... ,"Z”>* - zasadniczy tekst do wyświetlenia NAPIS

- Zbiór rekordów typu G - opis głowic znajdujących się na mapie

R = <ZG, DG, <ZG :

a

h h€ DG>>

gdzie: —

ZG = < REKORD REKORD >

a a

i iLoSć_a

DG = CTG , NRGOL , LRELG. .SLMREL. ,XP. , YP ,KOM. :

1

V I. V t L Ł i =1 .. . . ,IL0SĆ_G>

ZG : <G> - znak określający typ rekordu

TOl

ZG : < 1 ILGSO G> - numer opisywanej głowicy

NKOŁ.O V

ZG :<1 , . . . .ILOŚĆ R> - sumaryczna liczba relacji na głowicy

ŁJRELO

t

X L O S Ć _ O

ZG :-Cl , . . . , V ILOŚĆ MCjD - sumaryczna liczba mikrorelacji na głowicy

s l m r e l

i j = t

ZG -Cl.... SM> - współrzędna położenia głowicy na mapie i

ZG : < i .... WM> - współrzędna położenia głowicy na mapie ZG C A “.. . . ► "Z“> - komentarz

K O M

Z b i ó r r e k o r d ó w t y p u R - o p i s k o l e j n y c h r e l a c j i n a g ł o w i c a c h

R = < Z R , D R , < ZR, : k e D R > >

a k

ędzie:

Z R = C R E K O R D , . . . . R E K O R D >

R

1

RI!.OSĆ_R

D R = < T R , N R G L O , N R R E L . , PI . P 2 , L M R E L , N R 1 N R L M R E L . K O M : i =1 .

i l V I I V V *

(8)

110 Roman Konieczny, Stanisław Krawiec

ZR <R> - znak określający typ rekordu i.

ZR :<1 ,. . . ,ILOŚĆ_G> - numer głowicy, do której należy relacja

N R O L O

i

ZR .ILOŚĆ RCiD> - numer relacji na głowicy NRGLO

N R R E L v

t

ZRpi : <1 ,. . . ,ILOŚĆ__P> - numer połączenia początkowego relacji i

NRREL na głowicy NRGLO

Z R ^ : <1 , . . . ,ILOŚĆ_P> - numer połączenia końcowego relacji i

NRREL na głowicy NRGLO

ZR ;INTEGER - liczba mikrorelacji wchodzących w skład realcji NRREL

L M R E L J

l

NR1 ^ < 1 . »LMREL> - numer pierwszej mikrorelacji wchodzącej w skład relacji NRREL

NRLMREL^: <1 , . . . , L M R E L > - numer pierwszej mikrorelacji wchodzącej w skład relacji NRREL^

KOM. : < MA " ,. . . ,"ZM>* - komentarz v

Jako relacje na mapie rozumie się ciąg wybranych i w odmienny sposób wyświetlonych mi kr orel ac j i I

Zbiory rekordów typu R i G związane są z rekordami typu M - określają podczas pracy symulatora, które mikrorelacje w danej chwili mogą być wyświetlone jako zajęte.

4- Struktura wyjściowa programu PREMAPA

Strukturę statyczną danych opisujących mapę dowolnego rejonu sieci, przygotowaną do wyświetlania na ekranie monitora można przedstawić następująco:

WY = <R , R , R , R „R , R ,R >

LW PW SW N V OV R V MV - Zbiór rekordów typu LW - opis odcinków prostych mapy:

i

R L V = <ZLW, DLW, <ZLW :m me DLW>>

gdzie:

ZLW = <REKORD , . . . .REKORD >

LW LW

1 LICZBA L

DLW = <TL. .XI. ,Y1 . ,X2 .Y2 .STYL : i = l .... .LICZBA L>

V l L V L i

- Zbiór rekordów typu PW - opis połączeń

R pw= <ZPW, DPW, <ZPW^: ne DPW>>

(9)

Zagadnienie komputerowej realizacji- 111

g d z ie : ZPW =

DPW = < T P . K R P C L . X P . y P . X R . Y R , : 1 = 1 LICZBA_P>

ZPW = '<REKORD . . R E K O R D ^ >

i L ic z ą * _ u

- Zbiór rekordów typu SW - opis semaforów mapy

R = <ZSW.DSW.<ZSW : oe DSW>>

S W o

gdzie:

ZSW = < REKORD REKORD >

S V S W

1 L I C Z B A S

DSW = <TS » NRSEM ,XR , YR. , RSEM. , XI W. »Y1W. »X2W. »Y2W. »X1S. »Y1S , X2S »Y2S :

i * l i V L V Ł t l V V V V

i =1 ,. . . . LSEM>

gdzie:

XIW : <i,...»SN> - współrzędne odcinka sygnalizującego stan WOLNA DROGA

V

wewnątrz tarczy semafora

Y1W : <1,...»WN> - współrzędne odcinka sygnalizującego stan WOLNA DROGA

i

wewnątrz tarczy semafora

X2W : < 1 SN> w współrzędne odcinka sygnalizującego stan WOLNA DROGA

i.

wewnątrz tarczy semafora

Y2W : <1 »... , WN> - współrzędne odcinka sygnalizującego stan WOLNA DROGA i

wewnątrz tarczy semafora

X1S : <1,...,SN> - współrzędne odcinka sygnalizującego stan STÓJ wewnątrz tarczy semafora

Y1S : <1,. . . ,WN> - współrzędne odcinka sygnalizującego stan STÓJ

i

wewnątrz tarczy semafora

X2S : <1,...,SN> - współrzędne odcinka sygnalizującego stan STÓJ V

wewnątrz tarczy semafora

X2S : < 1 WN> - współrzędne odcinka sygnalizującego stan STÓJ

i

wewnątrz tarczy semafora

- Zbiór rekordów typu NW - opis tekstów mapy

R = <Z N W ,D N W ,<ZNW : pe DNW>>

N W P

gdzie:

ZNW= <REKORD »... »REKORD >

N V N V

1 L I C Z B A _ N

DNW = <TN ,XP , YP » LZ. . NAPIS. : i =1 7- • - » LI CZBA_N>

i Ł V Ł L

gdzie:

LZ : <1, . . . »SN> - liczba znaków napisu

(10)

112 Roman Konieczny, Stanisław Krawiec

- Zbiór'rekordów typu GW - opis głowic mapy

R = <ZGW,DGW.CZGW : re DGW>>

OW r

gdzie:

ZGW = CREKORD ... REKORD >

ov ov

1 L I C Z D A _ Q

DGW = <TG. .NRGOL .LRELG. .SLMREL .XP ,YP : i =1 ... LICZBA G>

V 1 l 1 Ł . L ~

- Zbiór rekordów typu RW - opis relacji na głowicach

R = <Z R W , D R W , <ZRW : se DRW>>

R V a

gdzie:

ZRW = < REKORD ,. . . , REKORD >

RW R W

1 L I C Z B A R

DRW = < T R .

1

,NRGLO. .NRREL.l l ,P1.l ,P2. ,LMREL .NR1 .... ,NRLMREL : i =1.l i i i

.... »LICZBA_R>

- Zbiór, rekordów typu MW - opis mikrorelacji

RW = <Z M W , D M W , <ZMW : te DMW>>

M W i

gdzie*.

ZMW v= < REKORD REKORD >

a*V M V

1 L I C Z B A M

DMW = <TM ,NRGLO. ,MRMREL. .XI . ,Y1. ,X2 .Y2. : i =1 .... .LICZBA M>

V I L l t l l —

Opis oznaczeń jak dla zbioru WE.

5. Program PREMAPA

Program PREMAPA przetwarza wejściowy zbiór rekordów opisujących symbole obecne na mapie na zbiór rekordów Cuproszczony zbiór symboli}

podlegających wyświetleniu. Program PREMAPA wykonany został w języku Turbo PASCAL wersja 3.01. Struktura tego programu jest następująca:

PROGRAM PREMAPA;

. . . deklaracje globalne;

PROCEDURĘ PRZESTAW; {przestawienie dwóch par elementów)

PROCEDURĘ WR; <pomocnicza dla rekordów typu L>

PROCEDURĘ PRZEPISZ;

{Procedury nakładkowe do sortowania poszczególnych typów rekordów)

(11)

Zagadnienie komputerowej realizacji. 113

OVERLAY PROCEDURE SORT_GLO; (sortowanie głowic>

OVERLAY PROCEDURE 'SORT_REL; (sortowanie relacji!

OVERLAY PROCEDURE SOET_MIK; (sortowanie mikrorelacji>

OVERLAY PROCEDURE SORT_POL; (sortowanie połączeń!

OVERLAY PROCEDURE SORT_SEM; (sortowanie semaforów!

OVERLAY PROCEDURE SORT_ODC; (sortowanie odcinków!

OVERLAY PROCEDURE SORT_NAP; (sortowanie napisów!

(SI ''PREMAPAnALFPROST. OVL! (OVERLAY PROCEDURE ALFABET_PROSTY!

(SI\PREMAPANALFPCCH.OVL! (OVERLAY PROCEDURE ALFABET_POCHYŁY!

(SINPREMAPAVALFEKSTR. OVL! (OVERLAY PROCEDURE ALFABET_EKSTRA!

BEGIN (PREMAPA!

. . . dialog wstępny;

WHILE NOT EOFCPLIK_WE! DO BEGIN

...czytanie znaku sterującego Ctyp rekordu!;

CASE ZNAK_STÈR OF

•L’: (linia zwykła - odcinek pojedynczy!

*T*: (linia tekstowa - napis na mapie Cgraficzny!!

CASE RODZAJ „ALFABETU OF 1 : ALF ABET_PROSTY ; 2: ALFABET_POCHYŁY;

3 : A L F A B E T _E K S T R A ; END; (CASE!

’S ’: (opis semafora!

’F ’: (opis semafora fikcyjnego!

’ P ’ : ( opl s poł ączeni a!

’G ’ : (opis głowicy!

’R ’: (opis relacji!

•M* : (opis mikrorelacji!

(12)

114 Roman Konieczny. Stanisław Krawiec

*N *: <napis wyróżnialny Calf anumeryczny}>

END; <CASE>

END; < WHILE>

IF SORT THEN procedury sortujące. .. <sortowanie i przepisywanie wyników>;

ELSE procedury przepisywania. . . <grupowanie wyników>;

. . . wydruk statystyki końcowej;

END; <PREMAPA>. •

Program zwymiarowano następująco:

MAX_GŁOWI C = lOOO;

MAX_RELACJI = 1500;

MAX_MIKRORELACJI = 4000;

MAX_POLĄC2EŃ * 4500;

MAX _SEMAF ORÓW = 2000;

MAX_ODCINKÓW = 6000;

MAX_NAPISÓW = 800.

Wymiary te wielokrotnie przewyższają potrzeby wynikające z uwarunkowań opisu mapy dużego rejonu sieci kolejowej do badań symulacyjnych.

Program PREMAPA przetwarza zbiór WE * WY według następujących zasad:

Przetworzenie rekordu typu L przez program PREMAPA polega na odcięciu KOMENTARZA

C ’L*. XI.Y1.X2,Y2.STYL,KOMENTARZ) * C * L * .X I .Y 1 ,X2.Y2.STYL} .

Rekord typu P przetwarzany jest przez program PREMAPA na dwa rekordy typu L Codcinki oznaczające krańce połączenia} oraz jeden rekord typu P przepisany bez zmian Cpo odcięciu komentarza!). Można to opisać w następujący sposób:

C * P *.NRPOL.X P ,Y P ,X R ,Y R ,KOMENTARZ) + C * P *,NRP0L,X P .Y P ,X R ,YR} + C ' L ’ , XI * , Y1 * , X2* . Y2*} +C * L* .XI ", Y 2 ‘*. X 2 " . Y2"} .

Rekord typu S przetwarzany jest przez program PREMAPA na dwa rekordy typu L C opisujące odcinki nogi oraz podstawy semaforaD oraz jeden rekord typu S . rozszerzony o dodatkowe informacje. Można to zapisać w następujący sposób:

C ’S' . NRSEM.XP, YP.XR. YR, RSEM. KOMENTARZ} a C ’S - . NRSEM. XR . YR . RSEM, XIz . Y1 z . X2z . Y2z,Xlc. Ylc.X2c.Y2c:>+C ’L ’ ,Xln, Yln. X2n, Y 2 n . 13 +C ’ L 1 . XI p, Ylp, X2p. Y2p, 1 j .

(13)

Zagadnienie komputerowej realizacji. 115

Przetworzenie rekordu typu F przez program PREMAPA jest następujące:

C*F* * NRSEM, X P , YP, X R , Y R , RSEM,KOMENTARZ} * C *S* »NRSEM,XR,YR,RSEM. Xlz,Y1z, X2z . Y2z , XI c . Y1 c . X2c . Y2c}

\

Ażeby zorientować semafor w płaszczyźnie mapy. wymagane Jest podanie współrzędnych XP,YP Cfikcyjna podstawa}.

Przetworzenie rekordu typu M jest następujące:

C *M* , NRGLO, NRREL, X1 . Y1 . X 2 . Y 2 , KOMENTARZ} -► C *M* , NRGLO, NRMREL, XI , Y1 ,X2. Y2}.

Przetwarzanie rekordu typu T przez program PREMAPA polega na wygenerowaniu odpowiedniego zestawu rekordów typu L. na podstawie którego przedstawiony może być graficzny kształt tekstu. Przetwarzanie takie można zapisać następująco:

C *T* , XP, Y P , WYS,SZER, ODSTĘP, STYL/KOLOR, RA. * TEKST* } -►

<C*L*,X I .Y1,X2,Y2,STYL/KOLOR} . . . C * L* .X I ,Y 1 .X2,Y2,STYL/KÓLOR} >

1 N

gdzie N określa aktualną liczbę odcinków elementarnych odpowiadających kształtowi tekstu 'TEKST*.

Poszczególne odcinki opisane są w następującym formacie:

XI=XP+A1•S Y1=YP+B1*S X2=XP+A2•S Yl=YP+B2•S gdzie:

W - wysokość litery.

S - szerokość litery,

XP.YP - współrzędne litery na mapie.

i zestawione w tabeli mogą być pamiętane w pliku źródłowym następująco:

A (kształt litery A>

A ’ {kształt litery Ą>

itd.

Przetworzenie rekordu typu N przez program PREMAPA polega na przepisaniu go z jednoczesnym obliczeniem liczby znaków NAPISu

C * N* ,XP,YP, * NAPIS*} C*N* ,XP.YP.LZ, *NAPIS*}

Przetworzenie rekordu typu G przez program PREMAPA polega na przepisaniu

(14)

116 Roman Konieczny, Stanisław Krawiec

r po odcięciu komentarza.

C *G* »NRGLO,LRELG,XP,YP.SLMREL.KOMENTARZ} * C *G * ,NRGLO,LRELG,XP,YP.SLMREL} .

Przetworzenie rekordu typu R przez program PREMAPA polega na odcięciu komentarza i przepisaniu:

C * R *,NRGLO.NRREL.P I .P 2 .LMREL,CNRl.. . . »NRLMREL},KOMENTARZ} + C *R’.NRGLO,NRREL.PI,P 2 ,LMREL.<N R 1 .... .NRLMREL}}.

W ramach przetwarzania zbioru WE + WY program PREMAPA oblicza dodatkowo wszystkie parametry aktualnie przetwarzanej mapy Ctakie jak długość, szerokość, liczba rekordów poszczególnych typów}, grupuje typy rekordów w kolejności następującej: G,R,M,P.S,L,N oraz opcjonalnie sortuje rekordy wg współrzędnej X mapy oraz numerów głowic.

6 - Uwagi końcowe

Przedstawiony program PREMAPA realizuje wszystkie wymagania wyspecyfikowane w założeniach ogólnych i szczegółowych. Czas przetwarzania pliku z opisem mapy dużego rejonu sieci kolejowej na komputerze IBM PC/XT 4.77 MHz wynosi kilka minut.

Przedstawiony program może być łatwo rozbudowany o przetwarzanie dodatkowych symboli,np. kontury peronów, wloty do sieci, kształty rozjazdów itp. Zdefiniowanie dodatkowych alfabetów również nie wymaga dużego nakładu pracy.

Program PREMAPA przygotowuje zbiór danych wykorzystywanych przez program MAPA, który przedstawiony zostanie w części II artykułu.

LITERATURA

[13 KRAWIEC S: Prezentacja ogólna modelu ruchu pociągów. Zeszyty Naukowe Politechniki Śląskiej, s. Transport nr 13 Gliwice 1989.

C23 KRAWIEC S: Opis nieformalny modeiu ruchu pociągów - elementy.

Zeszyty Naukowe Politechniki Śląskiej, s. Transport nr 13 Gliwice 1989.

[33 KRAWIEC S: Opis nieformalny modelu ruchu pociągów - interakcja elementów. Zeszyty Naukowe Politechniki Śląskiej, s. Transport nr 13 Gliwice 1989.

[4.3 KRAWIEC S: Opis formalny modelu ruchu pociągów. Zeszyty Naukowe Politechniki Śląskiej, s. Transport nr 13 Gliwice 1989.

[53 KONIECZNY R. + zespół Cpraea zbiorowa}: Zastosowanie Języka LOGLAN do modelowania dużych systemów transportowych na przykładzie modelu ruchu pociągów - Katowice 1987 Cmaszynopis pracy naukowo-badawczej NB-277X R T ''87 program RP. I . 09} .

[63 KONIECZNY R. ^ zespół Cpraea zbiorowa}: Zastosowanie języka LOGLAN do modelowania dużych systemów transportowych na przykładzie modelu ruchu pociągów część II - Katowice 1988 Cmaszynopis pracy naukowo-badawczej NB-195/RT/88 program RP.1.09}.

(15)

Z a g a d n ie n ie kom puterowej r e a l i z a c j i .

[73 KONIECZNY R. + zespół Cpraea zbiorowa}: Zastosowanie języka LOGLAN :i>.

modelowania dużych systemów transportowych na przykładzie model», ruchu pociągów część III - Katowice 1989 Cmaszynopis pracv naukowo-badawczej NB-195/RT/88 program RP.1.09}.

[83 KONIECZNY R. + zespół Cpraea zbiorowa}: Moduły programowe wspomagające komputerowy makromodel ruchu pociągów, Gliwice 1980 Cmaszynopis pracy naukowo-badawczej}.

PROBLEMS OF MAP COMPUTER REALIZATION OF RAILWAY SYSTEM - PART ONE

Summary

General concept of results simulation was vizualized by printing module which presented the actual graphic map of a represented railway system. The paper presents general assumptions, the structure of input and output data and PREMAPA programme structure. The programme was in Turbo PASCAL for large area transformation of railway system and it was monitored. PREMAPA programme processes source data which describe the map of any railway system into record file and then they are monitored ba MAPA programme Cto be continued in Part Two}.

REALISIERUNGSPROBLEME DER REGIONKARTE MIT BAHNNETZ AUF DEM KOMPUTER TEIL I

Zusammen!' assung

Bei der Realisierung des Zugverkehrssimulators wurde eine allgemeine Konzeption angenommen, daß die Simulationsergebnisse mit Hilfe eines Programmoduls, das die aktuelle VerkehrSituation auf der graphischen Karte der widerspiegelten Bahnnetzregion aufträgt und zugleich auf dem Bildschirm zeigt* visualisiert werden.

Im Aufsatz wurden Eingangsannahmen, Struktur der In- und Outputdaten sowie Struktur des Programms PREMAPA vorgestellt. Das genannte Programm wurde in der Programmiersprache TURBO PASCAL zum Zwecke der Widerspiegelung eines großen Bahnnetzregions auf dem Bildschirm realisiert. Das Programm PREMAPA verarbeitet die Eingangsdaten, die die Karte eines beliebigen Bahnnetzregions beschreiben. Am Ausgang kommen Datensätze, die durch das Programm MAPA zum Bildschirm zur Anzeige gebracht werden. Das MAPA

(16)

118 Roman Konieczny, Stanisław Krawiec

Programm wird im zweiten Teil vorliegendes Aufsatzes vorgestellt.

BOIIPOCH KOMniOTEPHOH PEAJTM3AUMM KAPTU P AHO HA X E JIE3H 0fl0P0*H 0H CETH - HAGb I

Pe 3IOM0

n p H H S I T O M T O , B O B p e M H p e a J I M 3 a U M M M O B e J l M p O B a H M B f l B H X B H H S TTOe 3 .A O B , T T O iiy M e H H b ie p e 3 y j i b T a T b i 6 y ¿ i y T B M 3 y a j i b H O T T p e B C T a B J i e H b i c n o M o n j o T T p o e u w p y i o m e r o 3 J i e i « H T a o T o ß p a x a i o m e r o a K T y a j i b H y i o C ü e c T B M T e j i b H y » } C H T b i a u n i o H a r p a < |> H M e c K o f t K a p T e T T p e / i C T a B J i s j e M o r o p a H O H a x e J i e 3 H o / i o p o X H O f t c e T H .

B c T a n .H ¡ T r p e / i c T a B J i e H o B x o / i H b i e n p e n o j i o x e H H » t C T p y K T y p y ü a H H b i x H a B x o a e H B b i x o f l e a T a K i e C T p y K T y p y T T p o r p a m n b i PREMAPA. B b u u e y n o n s i T y H y i o T T p o r p a n n y H a u M c a H O H a « 3 b X K e Turbo PASCAL b j i h n o / i e j i M ö o j i b i n o r o p a M O H a c e T M n o K a 3 b » a e n o H H a a x p a H e m d h h t o p a .

Ilpor p a n n a PREMAPA T r e p e p a ö o T b i B a e T h c x o ü H b i e Ä a H H u e o t t h cl>ib a i o m n e x a p T y j i i o ö o r o p a M O H a c e T H H a m h o x e c t b o p e x o p ^ i o B n p o e i i H p o B a H H b i x H a n o H H i o p e T r p o r p a n n o ń MAPA K O T o p a a p a c c w a T p H B a e T c a b o B x o p o n M a c T H H .

Cytaty

Powiązane dokumenty

Streszczenie. Moduł programowy MAPA jest składnikiem symulatora ruchu pociągów, którego zadaniem jest wizualizacja wyników symulacji na mapie topologicznej wybranego

+ zespół Cpraca zbiorowa}: Zastosowanie języka LOGLAN do modelowania dużych systemów transportowych na przykładzie modelu ruchu pociągów - Katowice 1987 Cmaszynopis

Zgodnie z tym co przedstawiono dotychczas dla potrzeb modelu ruchu pociągów na linii KRR. Obiekty topologiczne w modelu ruchu pociągów na linii KRR Fig.17..

Przykładowy rejon sieci kolejowej zawierający stację węzłową (wariant II) Fig.. Pojemność regulacyjna układu torowego. Dla rejonu tego można podobnie ja k dla rejonu

Dla celów tych zdefiniowano strukturę opisu dyskretnego topologii rejonu sieci oraz zbiór macierzy pojemności regulacyjnych rejonu sieci.. THE STRUCTURE OF A DISCRETE

Pojęcie sterowanie mchem pociągów przez stemjącego mchem nie obejmuje procesów generowania decyzji, na których sygnalizatorach w rejonie sieci i jakiej kolejności ma

nej prędkości pociągów wynikającej z warunków ruchowych w węzłach kolejowych z uwzględnieniem bezpieczeństwa i płynności ruchu.. Podstawą jest znajomość

S form ułow anie pytania ogranicza się w tedy do w skazania nazw w yszukiw anych danych (atrybutów ) oraz określenia cech, jak ie pow inny spełniać.. zw iązki