autors:Inga Lējēja
Uzdevuma nostādne
Sastādīt programmu makrovalodā
MicroStation Basic, kas veic koordinātu salikto pārveidošanu plaknē. Programmas
izpildei paredzēt divus variantus. Vienu variantu paredzēt teksta datnei, otru
paredzēt Bentley Systems CAD programmas MicroStation 95 projekta datnei.
Darba teorētiskais pamatojums
Translācija, mēroga izmaiņa un rotācija ir pamata
ģeometriskās transformācijas, kas ir galvenās prasības vizualizācijai ar datoru
un manipulēšanai ar kartes datiem. Šo pamata transformāciju kombinācija tiek
izšķirta kā afīnā transformācija. Tās ir nepieciešamas, kad tiek mainītas
koordinātu sistēmas un kad maina kartē attēloto simbolu novietojumu,
orientāciju un izmērus. Iepriekšējā prasība rodas, kad dati tiek attēloti 2D vai
3D kartes tīkla koordinātās un ir jāattēlo uz datora monitora ar to pašu
koordinātu sistēmu un datu iegūšanas kontekstā, kad sākumā lokālā mērniecības
koordinātu sistēmā ierakstītie dati jātransformē uz standarta kartes lapas
tīklu. Ja mērijums ir ticis atzīmēts uz papīra kartes, vēlēkās transformācijas
var ietvert kā starpnieku attēlošanai ciparojot tabulas koordinātas.
Translācija

Translācija ar pārvietojumiem Tx=3, Ty=4.
1. attēls. Translācijas transformācija.
2D translācija (1. attēls) pārvieto punktu x, y uz jaunu
punktu Tx, Ty, t.i
x’=x+Tx
y’=y+Ty
Mēroga izmaiņa
Lai izmainītu mērogu punktam x, y uz jaunu punktu x’, y’
mēs lietojam divus mēroga reizinātājus Sx un Sy, kas
attiecas uz mēroga izmaiņu katrā no divām (vai trijām) dimensijām ( 2. attēls).
(a) mēroga izmaiņa attiecībā pret sākumpunktu.

Objekta mēroga izmaiņa objektam, kas centrēts pret
sākumpunktu. Mēroga faktors Sx=2, Sy=3.

Mēroga izmaiņa objektam, kas nav centrēts pret
sākumpunktu. Mēroga faktors Sx=2, Sy=3.
(b) mēroga izmaiņa pret fiksētu punktu F (2, 2), lietojot
mēroga faktorus Sx=2, Sy=3, kas ir izteikts kā punkta
transformāciju rezultāts.

Izejas stāvoklis.

F translācija uz sākumpunktu Tx=-2, Ty=-2.

Mēroga izmaiņa Sx=2, Sy=3.

F translācija atpakaļ uz izejas stāvokli. Tx=2,
Ty=2
2. attēls. Mēroga transformācija.
Tādējādi divām dimensijām
x’=x*Sx
y’=y*Sy
Šī mēroga izmaiņa var tikt relatīvi attiecināta pret
koordinātu sistēmas sākumpunktu. Kad tā tiek pielietota uz objektu, kas
definēts ar noteiktu punktu skaitu, viss objekts tiek pakļauts pārvietošanai
saprotot, ka objekta centrs kustas par daudzumu, ko nosaka mēroga reizinātāji.
Ir nepieciešams saglabāt fiksētu vienu objekta punktu, tad fiksētais punkts
jāpārbīda uz sākumpunktu pirms mēroga izmaiņas, pēc kuras “fiksētais”punkts
jāpārbīda atpakaļ uz tā izejas stāvokli. Fiksētam punktam Fx, Fy
mēroga izmaiņa tādējādi sastāv no transformācijas (-Fx, -Fy)
(Sx, Sy) (Fx, Fy). No šejienes mēs
atrodam transformēto punktu x’’’, y’’’, kurus no izejas punkta x, y mēs varam
aprēķināt sekojoši:
x’=x-Fx
y’=y-Fy
x’’=x’*Sx=(x-Fx)Sx
y’’=y’*Sy=(y-Fy)Sy
x’’’=x’’+Fx=x*Sx+Fx(1-Sx)
y’’’=y’’+Fy=y*Sy+Fy(1-Sy)
Rotācija
Lai rotētu punktu x, y ap sākumpunktu ar leņķi - uz jauno
pozīciju x’, y’ formula ir
x’=xcosq-ysinq
y’=xsinq+ycosq
Rotācija ir virzienā pret pulksteņa rādītāju virzienu,
relatīvi pret koordinātu sistēmas sākumpunktu (3. attēls).
a)
Rotācija relatīvi pret
sākumpunktu (pozitīva pret pulksteņa rādītāju virzienu)
x’=xcosq-ysinq
y’=xsinq+ycosq

Objekta rotācija, kas centrēts pret sākumpunktu q=450.

Objekta orientācija, kas nav centrēts sākumpunktā q=450.
Rotācija ap fiksētu punktu F (2, 2) ar leņķi q=450 izsacīta kā pamata transformāciju
sekvence.

Izejas stāvoklis.

F translācija uz
sākumpunktu Tx=-2, Ty=-2.

Rotācija q=450.

F translācija atpakaļ uz izejas stāvokli Tx=2,
Ty=2.
3. attēls. Rotācijas transformācija.
Lai rotētu objektu ap pieņemtu sākumpunktu ir
nepieciešams ievest translācijas pret doto punktu pirms un pēc rotācijas
līdzīgā veidā kā ir aprakstīts pie mēroga izmaiņas. Pēdējās vietējās
transformācijas ir būtiskas datorkartogrāfijā, kad manipulē ar atsevišķiem
kartes simboliem kā bultiņām un teksta izmēriem.
Taisnleņķa koordinātu sistēmu maiņa
Lai mainītu vienu koordinātu sistēmu uz citu, vienai no
koordinātu sistēmām ir jābūt definētai attiecībā pret otru. Pieņemot, ka abas
koordinātu sistēmas ir taisnleņķa mums vajag zināt kopēju punktu, kas var tikt
definēts abās koordinātu sistēmās, katras dimensijas mēroga faktoru (t. i. Cik
daudz vienības no vienas koordinātu sistēmas ir prieks katras otras koordinātu
sistēmas vienības) un vienas sistēmas asu orientācija relatīvi pret otru.

4. attēls. Koordinātu sistēmu maiņa no sistēmas A uz
sistēmu B var tikt sasniegta pielietojot šīs transformācijas koordinātu
sistēmas A punktam, kuras ir vajadzīgas, lai līdzinātos B koordinātu sistēma ar
A koordinātu sistēmu.
Pieņemsim , apskatoties 4. zīmējumā,
kad mēs vēlamies transformēt punktus no koordinātu sistēmas A uz koordinātu
sistēmu B. Situācija ir īpaši vienkārša, ja kopējais punkts ir B koordinātu
sistēmas sākumpunkts.
Transformācija sastāv no tās
pielietošanas punktiem, kas pārstāv sākumā sistēmā A šīs transformācijas, kuras
tiek prasītas lai līdzinātos B koordinātu sistēma ar A. Atsaucoties uz 4.
zīmējumu Ox, Oy ir B koordinātu sistēmas sākumpunkts
definēts A koordinātu sistēmā. Bsx, Bsy ir B vienību
skaits uz A koordinātu sistēmu vienībām x un y asis un q ir leņķis starp B x asi un A x asi. Soļi tad ir
sekojoši:
1. Jātranslē ar -Ox, -Oy pārbīdot B
koordinātu sistēmas sākumpunktu uz A.
2. Jārotē ar -q ievedot asis līdz līdzībai.
3. Jāizmaina mērogs ar Bsx, Bsy padarot katras dimensijas vienības
ekvivalentas.
Ja kopējais punkts, kas tika lietots
translācijā 1.solī nav īstens B koordinātu sistēmas sākumpunkts, bet ir kāds
punkts koordinātu sistēmā B, mums ir jāievieš ceturtais solis, lai savienotu
šīs punkta koordinātas. Papildu solis ir:
4. Jātranslē bx, by koordinātas
pievienojot vietējam sākumpunktam
Praktisks piemērs šai koordinātu
sistēmu maiņai būs, kad koordinātu sistēma B attēlo karšu tīkla sistēmu, kas ir
ciparota uz ciparošanas galda pārstāvot koordinātu sistēmu A.
Ja tas bija gadījums, kad mēroga
faktors un leņķis varēja netikt precīzi formulēts, bet varēja tikt iegūts trīs
kontrolpunktiem, kurus operatoram tika prasīts projicēt. Šie punkti var būt
kartes lapas sākumpunkti un viens punkts katrā no diviem kartes tīkla blakus
stūriem.
Cits piemērs ir koordinātu sistēmas
transformācijas pielietojums kad uzzīmētā ciparu kartē ir definēta tās
koordinātu sistēma uz grafiskās attēlošanas ierīces. Datorgrafikas
terminoloģijā, transformācija var tikt definēta kā logs uz lietotāja koordinātu
sistēmu, t.i. taisnstūrveida laukums definē kartes apgabalu, kurš jāattēlo un
skatu pieslēgvietu definējot ar atbilstošo taisnstūri uz attēlošanas ierīces
grafiskā displeja koordinātu sistēmā.

5. attēls. Loga transformācija uz skata pieslēgvietu
datorgrafikā. Koordinātu sistēmu maiņa ir nepieciešama lai attēlotu
taisnstūrveida apgabalu lietotāja (pasaules) koordinātu sistēmā, ko definē ar
logu attēlošanas ierīces taisnstūrveida apgabala ietvaros, ko definē ar
pieslēgvietu.
Bieži abi taisnstūri ir orientēti
paralēli viens otram tā, ka šeit nav vajadzības pēc rotācijas (5. attēls).
Sākuma transformācija tiek uzdota ar apakšējo kreiso skata pieslēgvietu. Mēroga
izmaiņa tiek iegūta no loga malu un pieslēgvietas proporcijas un beigu transformācijā tiek dota
apakšējā kreisā loga stūra koordinātas.
Paskaidrojumi programmas lietotājam
Ievads
Programma SALKOPAR ir sarakstīta
programmēšanas makrovalodā MicroStation Basic un ir paredzēta saliktai
koordinātu pārveidošanai plaknē TM projekcijā LKS-92 koordinātu sistēmā, kā arī
vietējās koordinātu sistemās. Datu apstrāde var veikt vai nu izmantojot teksta
datni (*.txt), vai arī MicroStation 95 projekta datni (*.dgn).
Programmas uzstādīšana
Uzstādot programmu SALKOPAR
MicroStation kataloga apakškatalogā MACROS
jāiekopē datnes salkopar.ba un salkopar.bas, kas satur programmas
SALKOPAR moduļa kompilētu kodu.
Programmas palaišana
Programmu SALKOPAR var palaist:
·
MicroStation
KeyIn rindā ievadot komandu macro
salkopar;
·
MicroStation
KeyIn rindā ievadot komandu macro,
un izvēloties Macro Name salkopar,
un nospiežot pogu Run (8. un 9.
attēls);
·
Izvēļņu
rindā izvēloties izvēlni Utilities,
zem kuras slēpjas komandkarte, kurā izvēlas Macros, pēc kuras atveras lodziņš Macros, un izvēloties Macro
Name salkopar, un nospiežot pogu Run
(6.-9. attēls).

6. attēls.

7. attēls.

8. attēls.

9. attēls.
Pēc programmas palaišanas
aktivizējas sekojošs informācijas lodziņš, kāds tas ir parādīts 10. attēlā,
kurš ir jāaizver ar pogu OK.

10. attēls.
Programmas lietošana
Lai varētu lietot programmu,
vispirms ir jāiestāda visi nepieciešamie transformācijas parametri -
translācija pa x asi xt6, translācija pa y asi yt6, x ass rotācija ex, y ass
rotācija ey, mēroga izmaiņa pa x asi mx un mēroga izmaiņa pa y asi my (11.-12. attēls).
Šos parametrus lietotājam ir jāapstiprina ar pogu LABI, pretējā gadījumā jānospiež poga ATCELT. Ja lietotājs nebūs ievadījis visus parametrus, vai arī
nebūs ievadījis nevienu parametru un gribēs apstiprināt, tad programma
atkārtoti pieprasīs parametru ievadi.

11. attēls.

12. attēls.
Pēc parametru ievades un
apstiprināšanas atveras izvēles logs (13. attēls), kurā lietotājam jāizvēlas ar
kādu datni strādāt - vai ar *.txt datni, vai ar *.dgn datni. Tas ir izdarāms
izvēloties attiecīgo radiopogu un apstiprinot to ar pogu LABI, pretējā gadījumā ATCELT.
Ja lietotājs nebūs izvēlējies nevienu datnes tipu un gribēs to apstiprināt, tad
atkārtoti parādīsies izvēles logs.

13. attēls.
Darbs ar *.txt datni
Teksta datnes struktūra jābūt tādai,
kā tas ir parādīts 1. tabulā:
1
|
349732.350
|
543757.750
|
2
|
349563.420
|
543376.690
|
3
|
349376.370
|
543139.630
|
1. tabula.
Pirmā sleja apzīmē punkta nr., otrā
tā x koordināti un trešā - tā y koordināti. Rindās ir nepieciešamas atstarpes
starp tās elementiem. Rakstot teksta datnē punktu nr. un to koordinātas
nedrīkst lietot tabulatoru TAB.
Programmas datu ievads ir *.txt datne, bet izvads *.dat datne tajā pašā
direktorijā, kur atrodas *.txt datne. Brīdinājums: ja direktorijā jau ir datne
ar paplašinājumu *.dat un tās nosaukums sakrīt ar lietotāja izvēlētās datnes
vārdu, tad šī datne tiek neatgriezeniski izdzēsta.
Ja lietotājs grib izvēlēties teksta
datni, tad viņam jāaktivizē radiopoga *.txt un
sava izvēle jāapstiprina ar pogu LABI
(14. attēls).

14. attēls.
Pēc tam atvērsies izvēles logs, kurā
lietotājam jāizvēlas direktorija un teksta datne, kurai lietotājs grib veikt
transformāciju (15.-17. attēls).

15. attēls.

16. attēls.

17. attēls.
Pēc datnes izvēles parādīsies
informācijas logs, kurā parādās teksts ar lietotāja izvēlētās datnes nosaukumu,
kurš jāapstiprina ar pogu OK (18.
attēls).

18. attēls.
Nākošajā logā lietotājs redz punktu
numurus un to koordinātas savā izvēlētajā datnē (19. attēls).

19. attēls.
Pēcāk parādās informācijas logs ar
tekstu, kurā parādās lietotāja izvēlētās datnes nosaukums ar paplašinājumu
*.dat. Tas ir jāapstiprina ar pogu OK (20.
attēls).

20. attēls.
Turpmākajā logā parādās
uz citu koordinātu sistēmu pārtransformētās punktu koordinātas (21. attēls)

21. attēls.
Skaņas signāls liecina, ka
transformācija ir pabeigta.
Darbs ar *.dgn datni
Darbojoties ar *.dgn datni, tajā
esošie dati tiks neatgriezeniski sabojāti, tādēļ ir nepieciešams pirms saliktās
koordinātu pārveidošanas noņemt datu rezerves kopiju ar citu datnes nosaukumu.
Ja lietotājs grib izvēlēties
MicroStation projekta datni *.dgn, tad viņam jāaktivizē radiopoga *.dgn un sava izvēle jāapstiprina ar pogu LABI (22. attēls).

22. attēls.
Atšķirībā no teksta datnes šeit
netiks izdots neviens lodziņš, kurus vajadzēs apstiprināt. Skaņas signāls
liecina, ka transformācija ir pabeigta.
Kontrolpiemēra analīze
Programmas darbības pārbaudei kā
kontrolpiemērs tika izmantoti sekojoši punkti un to koordinātas (2. tabula):
nr.
|
x
|
y
|
1
|
149732.350
|
943757.750
|
2
|
149563.420
|
943376.690
|
3
|
149376.370
|
943139.630
|
2. tabula.
Transformācijas parametri šajā
kontrolpiemērā tika pieņemti sekojoši (3. tabula):
xt6
|
0.5
|
yt6
|
0.8
|
ex
|
30
|
ey
|
30
|
mx
|
0.3
|
my
|
0.5
|
3. tabula.
Praktiskie rezultāti, izmantojot *.txt datni
nr.
|
x
|
y
|
1
|
471772.418
|
37298.996
|
2
|
471576.351
|
37319.679
|
3
|
471450.584
|
37356.839
|
4. tabula.
Pēc rezultātiem var redzēt, ka šī
transformācija veiksmīgi nostrādā.
Praktiskie rezultāti, izmantojot *.dgn datni
nr.
|
x
|
y
|
1
|
35919.465
|
283127.175
|
2
|
35868.786
|
283012.857
|
3
|
35812.671
|
282941.739
|
5. tabula.
Šis transformācijas veids nostrādā,
bet rezultāti atšķiras no *.txt faila. Tas liecina par to, ka nenostrādā kāda
no koordinātu transformācijām: vai nu translācija, vai pārbīde vai arī
rotācija.
Secinājumi
Programmas
darbībā sastopami sekojoši trūkumi:
·
Ja
lietotājs nospiež Cancel vai NĒ, tad programma lietotājam piedāvā nākošo
izvēles logu.
·
Nav
pilnībā realizēta *. dgn datnes transformācija.
·
Programma
netransformē *. txt datni ar negatīvām
ievadkoordinātu vērtībām.
·
*.dgn
datnes transformācija neveic afīno (sešparametru) transformāciju, jo netika atrasts
atbilstošs teorētiskais pamatojums.
Kā
programmas darbības priekšrocības varētu minēt:
·
*.txt
transformācijā programma no ievaddatnes izveido izvaddatni, kā arī parāda
rezultātus uz ekrāna.
·
Programma
atvieglo lietotājam direktorijas un tajā esošās ievaddatnes izvēli.
Pēc kontrolpiemērā redzamiem rezultātiem ir redzams, ka
rezultāti atšķiras. Visticamākais, ka kļūdas ir *.dgn datnes transformēšanā.
Grūti ir spriest par to, kura transformācija ir vistuvāk pareizajiem
rezultātiem tādēļ, kad netika salīdzināti teorētiski iespējamie rezultātu ar
praktiskajiem.
Darba rakstīšanas gaitā bija grūtības, kuras galvenokārt
bija saistītas ar programmēšanas atkārtošanu, kā arī ar darba teorētiskā
materiāla studēšanu un tukošanu no angļu valodas. Vēl interesanti bija
atkārtot, kā pareizi ir jāzīmē algoritmu blokshēmas.
Darbs parādīja, ka rezultātus ar automatizētās
projektēšanas programmu MicroStation ir iespējams iegūt dažādos veidos un kā
viens no iespējamiem veidiem ir programmēšana makrovalodā MicroStation BASIC.
Pielikums
Algoritma galvenā moduļa blokshēma

Programmas teksts
'Saliktā koordinātu pārveidošana
'
'-------------------------------------------------------------------------------------------------------------------------
'Autori: Salvis Bošs & Inga Lējēja
'-------------------------------------------------------------------------------------------------------------------------
Public filter$
Public tx6$
Public ty6$
Public xe$
Public ye$
Public xm$
Public ym$
Public filename$
Public Radio as Integer
'-------------------------------------------------------------------------------------------------------------------------
Sub Parametri
tx6$ = ""
ty6$ = ""
xe$ = ""
ye$ = ""
xm$ = ""
ym$ = ""
’Transformācijas parametru
ievadīšana
actionButton = mbeOpenModalDialog
(3)
While actionButton =
Mbe_Button_OK and ((tx6$=null)or (ty6$=null) or (ye$=null) or (xm$=null) or
(ym$=null))
actionButton =
mbeOpenModalDialog (3)
Wend
End Sub
'-------------------------------------------------------------------------------------------------------------------------
Sub Datne
const suggest$ = ""
Dim button as long
Dim Status as long
Dim text$ as String
’Direktorijas un datnes izvēle,
kurai vajag veikt transformāciju
actionButton = mbeOpenModalDialog
(1)
Select Case actionButton
Case 1001
directory$ =
"m:\"
title$ =
"Mārupe"
Case 1002
directory$ =
"s:\"
title$ =
"Sabile"
Case Mbe_Button_Ok
directory$ =
"v:\"
title$ =
"Salacgrīva"
Case 1004
directory$ =
"o:\"
title$ = "Ogre"
Case Mbe_Button_Cancel
directory$ =
"r:\"
title$ = "Rīga"
Case 1006
directory$ =
"i:\"
title$ =
"Inženieru"
Case 1007
directory$ =
"x:\"
title$ = "Citi"
Case 1010
directory$ =
"c:\"
title$ = "C:\"
Case 1013
If filter$ = "*.txt,
teksta faili [*.txt]" then
MbeMessageBox
("Šī izvēle pagaidām nav iespējama ar *.txt failiem.")
else
MbeSendKeyin
"dialog openfile"
if
mbedgninfo.dgnfilereadonly=0 then
Else
MbeMessageBox
"Darbības nevar izpildīt. Datne ir atvērta kā read_only."
end if
End If
exit sub
Case 1014
If filter$ = "*.txt,
teksta faili [*.txt]" then
MbeMessageBox
("Šī izvēle pagaidām nav iespējama ar *.txt failiem.")
else
MbeSendKeyin
"create drawing"
End If
exit sub
Case 1003
MbeMessageBox ("Jūs
nospiedāt ATCELT.")
exit sub
End Select
filename$ = ""
status = MbeFileOpen (filename$,
suggest$, filter$, directory$, title$)
If filter$ = "*.dgn,
Microstation projekta faili [*.dgn]" then
If status = MBE_Success Then
MbeSendKeyin "rd=" + filename$
Else
button = MbeMessageBox
("Lietotājs nospieda CANCEL.")
End If
if
mbedgninfo.dgnfilereadonly=0 then
else
MbeMessageBox "
Darbības nevar izpildīt. Datne ir atvērta kā read_only."
end if
end if
End Sub
'-------------------------------------------------------------------------------------------------------------------------
Sub Tips
const na$ = "dat"
’Transformācijas veikšana, atkarībā no tā, vai datne ir *.txt vai *.dgn
Select Case Radio
Case 1
’*.txt datnes
transformācija
xt6# = val(tx6$)
yt6# = val(ty6$)
ex#= val(xe$)
ey#= val(ye$)
mx#= val(xm$)
my#= val(ym$)
open fileName$ for input
as #1
n = len(filename$)
name$ =
Left$(FileName$,n-3)
nam$ = name$&na$
open nam$ for output as
#2
close #2
kill nam$
open nam$ for append as
#3
while not eof(1)
line input #1,lin$
rn$ = word$(lin$,1)
x1$ = word$(lin$,2)
x2$ = word$(lin$,3)
y1$ = word$(lin$,4)
y2$ = word$(lin$,5)
teksts$ =
teksts$+chr$(10)+lin$
nr# = val (rn$)
x6# = val(x1$+
chr$(46)+x2$)
y6# =
val(y1$+chr$(46)+y2$)
rm11#=cos(ex#)*mx#
rm21#=sin(ex#)*mx#
rm12#=-sin(ey#)*my#
rm22#=cos(ey#)*my#
x5# =
xt6#+(rm11#*x6#)+(rm12#*y6#)
y5# =
yt6#+(rm21#*x6#)+(rm22#*y6#)
x$ = str$(x5#)
x$ =
format$(x$,"#######.000")
y$ = str$(y5#)
y$ =
format$(y$,"#######.000")
li$ =
rn$+chr$(32)+x$+chr$(32)+y$
tekst$ =
tekst$+chr$(10)+li$
wend
print #3,tekst$
close #1
close #3
MbeMessageBox
"Teksta datnes "+filename$+" saturs"
MbeMessageBox teksts$
MbeMessageBox
"Teksta datnes "+nam$+" saturs"
MbeMessageBox tekst$
Case 2
’*.dgn datnes transformācija
MbeSendKeyIn "place
fence universe"
MbeSendKeyIn
"xy=0,0"
Parbide
Rotacija
MerogaIzmaina
End Select
End Sub
'-------------------------------------------------------------------------------------------------------------------------
Sub Parbide
’Pārbīdes transformācija *.dgn datnei
MbeSendCommand "FENCE ICON
"
MbeSetAppVariable "",
"msToolSettings.fence.contentsMode", 1&
MbeSendCommand "FENCE ICON
"
MbeSendCommand "LOCK FENCE
INSIDE "
MbeSendKeyin "xy=0,0"
bidit$ =
"xy=-"+tx6$+chr$(44)+chr$(45)+ty6$
MbeSendKeyin bidit$
End Sub
'-------------------------------------------------------------------------------------------------------------------------
Sub Rotacija
’Rotācijas transformācija *.dgn
datnei
MbeSendCommand "FENCE ICON
"
MbeSetAppVariable "",
"msToolSettings.fence.contentsMode", 3&
MbeSendCommand "FENCE ICON
"
MbeSendCommand "LOCK FENCE
INSIDE "
rotet$ = "aa="+xe$
MbeSendKeyin rotet$
MbeSendReset
End Sub
'-------------------------------------------------------------------------------------------------------------------------
Sub MerogaIzmaina
’Mēroga izmaiņas transformācija *.dgn datnei
MbeSendCommand "FENCE ICON
"
MbeSetAppVariable "",
"msToolSettings.fence.contentsMode", 3&
MbeSendCommand "FENCE ICON
"
MbeSendCommand "LOCK FENCE
INSIDE "
merogs$ =
"as="+xm$+chr$(44)+ym$
MbeSendKeyin merogs$
MbeSendKeyin "xy=0,0"
MbeSendReset
End Sub
'-------------------------------------------------------------------------------------------------------------------------
Sub Main
Dim button as Long
’Programmas sākums
button = MbeMessageBox
("Programma veic salikto koordinātu pārveidošanu", MBE_OKBox or
MBE_InfoIcon)
Parametri
Radio = 0
’*.txt vai *.dgn datnes izvēle
ActionButton = mbeOpenModalDialog
(2)
While actionButton =
Mbe_Button_OK and Radio=0
actionButton =
mbeOpenModalDialog (2)
Wend
filter$ = ""
Select Case Radio
Case 1
filter$ = "*.txt,
teksta faili [*.txt]"
Case 2
filter$ = "*.dgn,
Microstation projekta faili [*.dgn]"
End Select
Datne
Tips
’Skaņas signāls, kas liecina, ka
transformācija ir pabeigta
Beep
End Sub
Literatūras saraksts
1.
Christopher
B. Jones Geographical Information Systems and Computer Cartography - Harlow:
Longman, 1997 - 320 pp.
2.
MicroStation
95.Microstation BASIC Guide.
3.
Datorgrafika.
Lekciju kurss
4.
Augstākā
ģeodēzija. Lekciju kurss
5.
Programma
ĢED. Apraksts
Nav komentāru:
Ierakstīt komentāru