================================================================================
LKS92 un LKS2020 Koordinātu Transformācijas Rīks MicroStation V8i (V.1.2)
================================================================================

Šī pakotne nodrošina automatizētu DGN failu satura transformāciju starp LKS92 
un LKS2020 koordinātu sistēmām, izmantojot MicroStation V8i (SS3) un Excel fona aprēķinus.

IEKĻAUTIE FAILI:
1. Transformācijas_makross_8_mikrostacijai_V.1.2.txt – MicroStation VBA makrosa kods.
2. LKS_Transformacijas_Kalkulators_Pilns.xlsm – Aprēķinu dzinējs. Satur LĢIA izsniegtos 
   NTv2 transformācijas režģa (Grid) datus un iebūvētu Excel makrosu IDW (Inverse 
   Distance Weighting) interpolācijai. Kalkulatoru var izmantot arī vienkārši pārrēķinot koordinātas skaitliski.
3. LKS_rezgi.dgn – Vizuāls palīgmateriāls ar abu koordinātu sistēmu nobīžu tīklu.

DARBĪBAS PRINCIPS UN MATEMĀTIKA (Deformācijas vs Pārbīde):
Pētot koordinātu tīklu deformācijas, secināms, ka ikdienas mērniecības darbiem nav 
vērts rēķināt individuālu pārbīdi katram objekta (līnijas vai poligona) virsotnes 
punktam. Katra punkta individuāla transformēšana rada risku izjaukt faila ģeometrisko 
topoloģiju – piemēram, līnijas, kas precīzi atduras pret citu līniju (bet ne lūzumpunktā), 
pēc šādas transformācijas varētu "atdalīties" vai krustoties.

Tāpēc šis makross izmanto CENTROĪDA metodi. Tas atrod iezīmētā apgabala vai visa faila 
centrālo punktu, izrēķina nobīdi tikai šim vienam punktam un pilnīgi visus elementus 
pārvieto (pārbīda) par šo konstanto vektoru, perfekti saglabājot objekta iekšējo 
ģeometriju un topoloģiju. 

Kāpēc šī metode ir droša un precīza?
Matemātiskie aprēķini LĢIA tīklā parāda:
- Transformējot visu Latvijas teritoriju vienlaicīgi (visplašākais iespējamais tvērums), 
  maksimālā kļūda jeb nobīžu atšķirība (deformācija) būtu tikai ap 3.7cm.
- Transformācijas izmaiņu gradients ir tik lēzens, ka objektam jābūt vismaz 10 km 
  garam, lai nobīžu atšķirība starp tā tālākajiem punktiem radītu 2 mm deformāciju.
Tas nozīmē, ka standarta mērniecības objektos (zemes gabali, trases, topogrāfijas) 
centroīda metodes radītā iekšējā deformācija nav fiziski izmērāma, toties faila 
topoloģija paliek ideāla. Attiecīgi – šo rīku nav ieteicams izmantot nacionāla mēroga 
objektu (piemēram, visas Latvijas sliežu tīkla) transformēšanai vienā piegājienā, 
bet ikdienas objektu mērījumos tas strādā nevainojami.

ĪPAŠO ELEMENTU FILTRĒŠANA (Krusti un Teksti):
Lai saglabātu faila vizuālo atbilstību un noformējumu, makrosā ir iebūvēts filtrs, kas 
noteiktus elementus atstāj to sākotnējās vietās (tie netiek pārbīdīti līdzi visai grafikai):
* Krusti: Šūnas (cells) ar nosaukumu "KRUSTS", kas atrodas GEOD_ELEM_* līmeņos, netiek 
  pārvietotas. Transformējot uz 2020, šie krusti tiek pārcelti uz jaunu līmeni 
  "GEOD_ELEM_LKS2020". Transformējot atpakaļ uz 92, makross tos meklē šajā 2020 līmenī 
  un pārceļ uz "GEOD_ELEM_LKS92" (ja tie ir citā līmenī, izlec brīdinājums).
* Koordinātu teksti: Jebkurš teksta elements, kas atrodas līmenī ar struktūru 
  GEOD_KORD_*_TKST_#, paliek fiksēts savā vietā.

UZSTĀDĪŠANA:
1. Saglabā LKS_Transformacijas_Kalkulators_Pilns.xlsm failu datorā.
2. Atver MicroStation un izveido vai atver savu VBA projektu (Utilities -> Macro -> Project Manager).
3. Pievieno jaunu moduli un iekopē kodu no Transformācijas_makross_8_mikrostacijai_V.1.2.txt.
4. OBLIGĀTI: Koda pašā sākumā atrodi konstanti "EXCEL_FILE_PATH" un nomaini tās vērtību 
   uz precīzu kalkulatora faila atrašanās vietu tavā datorā (piem., "C:\Dati\Kalkulators.xlsm").
5. OBLIGĀTI (Ja nepieciešams): Ja makrosa beigās neatveras koordinātu sistēmas logs, 
   makrosa sākumā izlabo konstanti "GCS_COMMAND" uz savas versijas pareizo komandu 
   (piem., "dialog gcs").
6. Izveido pogu savā MicroStation .dgnlib bibliotēkā, piesaistot komandu: vba run LKS_Transformacija

LIETOŠANA UN KONTROLE:
* Fence vs Viss fails: Lai transformētu konkrētu objektu kopumu vai sadalītu garu trasi, 
  iezīmē teritoriju ar Fence. Ja Fence nav, makross skenē visu failu, brīdina par 
  kopējo izmēru un piedāvā turpināt vai atcelt darbību.
* Transformācijas pēdas: Pēc veiksmīgas transformācijas makross automātiski izveido 
  slāni "NO_LKS92_UZ_LKS2020" (vai otrādi) un ievelk tajā sarkanu līniju. Šī līnija 
  parāda veikto centroīda nobīdi reālajā dabā un kalpo kā nepārprotams 
  vizuāls apstiprinājums, ka fails ir jau ticis pārveidots. 
* Ģeogrāfiskā koordinātu sistēma (GCS): Pēc darbības pabeigšanas, makross paziņo par 
  pārbīdes vektoru un automātiski atver "Geographic Coordinate System" logu. Neaizmirsti 
  nomainīt faila koordinātu sistēmas nosaukumu, lai nepaliek vecā! To visvieglāk izdarīt 
  caur pogu "From File", ieimportējot to no VZD izplatītā jaunā seed faila.

================================================================================
Bet pārbaudi vien arī ar LĢIA kalkulatoru, jo šis rīks nav oficiāls, bet mērnieka + Gemini taisīts.