TRANSFORMATION
Das Rechenmakro TRANSFORMATION transformiert Punkte aus einem beliebigen (örtlichen) Koordinatensystem über Passpunkte in das System des Auftrags. Der erste Satz enthält die Passpunkte mit ihren örtlichen Koordinaten, die folgenden Sätze die Neupunkte. Eine eingebettete ENTFERNUNGEN-Sektion erlaubt zusätzlich Spannmaße als Beobachtungen.
Syntaxregel
TRANSFORMATION [, KOORDINATENSYSTEM <n> | , LS <n>] [, <Kopf-Parameter>]*
<Passpunkt> { , <Passpunkt> }* ; (Satz 1: Passpunkte)
{ <Neupunkt> ; }* (je Satz ein Neupunkt)
[ ENTFERNUNGEN [, M = <w>]
{ <NV> [<A>] <NR> <NV> [<A>] <NR> <Maß> [<Gew>] [o] ; }* ]
END[;]
<Passpunkt> ::= <NV> <NR> <W1> <W2> [<Gew> [<GewX>]] [o] [v]
<Neupunkt> ::= <NV> [<A>] <NR> <Flags> <W1> <W2>
| Regelelement | Bedeutung |
|---|---|
<W1> <W2> |
örtliche Koordinaten Y X (Pflicht); mit Kopf-Parameter POLAR stattdessen Hz HD (polare Quellwerte)
|
<Gew> [<GewX>] |
optionales Gewicht des Passpunkts; mit Kopf-Parameter GEWX zusätzlich getrenntes X-Gewicht
|
o |
Passpunkt passiv setzen (nimmt nicht an der Ausgleichung teil, wird nur geprüft) |
v |
Flag Veränderung (Punkt wird als koordinatenmäßig verändert geführt; seit 29.05.2020 auch bei Trafo-Festpunkten) |
<Flags> |
Flags des Neupunkts, üblich x (keine); Bedingungsflags b/s sind in Transformationen nicht zulässig (Fehler 66)
|
ENTFERNUNGEN |
eingebettete Spannmaß-Sektion (ab Satz 2 möglich): je Satz zwei Punkte mit Pflicht-Maß, optional Gewicht; Flag o = Maß nicht verwenden
|
Parameter
Allgemeine Kopf-Parameter (NR =, DATUM =, ZEIT =, PNR =, KN = '…', REM = '…', NE, DEA) siehe Blockkopf-Parameter. Makrospezifisch:
| Parameter | Syntax | Pflicht | Bedeutung | Bundesland |
|---|---|---|---|---|
| Parameterzahl | ,P = 3|4|5|6 |
nein | Transformationstyp: 3 = Kongruenz (Standard), 4 = Helmert/Ähnlichkeit, 5 = 5-Parameter, 6 = Affin. Höhen: ,P| = 1|2 |
alle |
| polare Quelle | ,POLAR |
nein | Quellwerte sind Hz HD statt Y X |
alle |
| Maßstab | ,M = w |
nein | Multiplikator für alle örtlichen Werte (auch reziprok M = 1/0.9987); in Folgesätzen für die ENTFERNUNGEN-Sektion erlaubt |
alle |
| GK-Reduktion | ,GK_RED |
nein | örtliche Werte Gauß-Krüger-reduzieren (auch in Folgesätzen erlaubt) | alle |
| Toleranzen | ,ZP = w / ,ZS = w |
nein | zulässige Punkt- bzw. Spannmaßabweichung | alle |
| Restklaffen | ,VRK / ,VRK = s|s2|s32 |
nein | nachbarschaftstreue Verteilung der Restklaffen | alle |
| Gewichte | ,GEWX / ,GEWM = w |
nein | getrennte X-Gewichte zulassen / Gewichtsmaßstab | alle |
| mittlere Fehler | ,MF_S = w / ,MF_YX = w |
nein | a-priori-Fehler der Spannmaße bzw. der Koordinaten | alle |
| gemeinsame VA | ,CVA |
nein | Transformation verkettet mit der Streckenausgleichung der ENTFERNUNGEN-Sektion rechnen (statt nacheinander) | alle |
| Sortierung | ,SNR_P / ,SX_P / ,SNR_N / ,SX_N |
nein | Passpunkte/Neupunkte nach Nummer bzw. X sortieren | alle |
| Fixierungen | ,FIXM / ,FIXN |
nein | Maßstab bzw. Nachbarschaft fixieren | alle |
| Abhängigkeit | ,NA |
nein | normale Abhängigkeit (nur mit globaler Option $SP_DEP_TRAFO) |
alle |
| BW-Spezifika | ,APA / ,AWS = n |
nein | automatische Punktausscheidung / Auswerteschranke | nur BW |
Datenzeilen
- Punktangabe siehe Punktidentifikation; Transformationen gehören zu den Makros ohne VMA-Spalte in Neupunkten (
NV [A] NR Flags Werte). - Satz 1 (Passpunkte, kommagetrennt): jeder Passpunkt braucht beide örtlichen Koordinaten (Fehler 77 bei fehlenden Werten).
- Ab Satz 2 je Satz genau ein Neupunkt mit vollständiger Punktbeschreibung und beiden örtlichen Koordinaten.
- ENTFERNUNGEN-Sektion: erster Datensatz je Paar enthält beide Punkte und das gemessene Maß (Pflicht), optional ein Gewicht; wie beim Makro ENTFERNUNGEN, aber als Beobachtung der Ausgleichung.
Beispiele
Hinweis: VermCad ergänzt beim Speichern binäre Codierungszeilen; sie sind hier weggelassen.
Beispiel (Baden-Württemberg, echt — Helmert mit VRK)
TRANSFORMATION, NR = 1, P = 4, GK_RED, VRK, GEWM = 50000.0, DATUM = 16.09.2020, ZEIT = 15:10:34, PNR = 1, REM = 'Datei ws.txt' 0455 218/22 50736.59 70881.81, 0455 218/38 50858.57 70916.22, 0455 220/0 50677.31 71012.43, 0456 471/0 50845.70 71067.51; 0455 2 218/31 x 50778.17 70899.03; 0455 2 218/29 x 50772.10 70908.53; 0455 2 218/30 x 50774.33 70909.72; END
Beispiel (Baden-Württemberg, echt — 5-Parameter, Zahlenriss mit X-Gewichten)
TRANSFORMATION, NR = 2, P = 5, GK_RED, GEWX, DATUM = 16.09.2020, ZEIT = 16:01:17, PNR = 1, KN = '1854/55 S.15', REM = 'Datei linie_4.txt' 0455 V709 0.00 12.32, 0455 V710 0.00 14.15, 0455 218/104 0.00 35.67, 0455 218/105 -68.36 39.54; 0455 2 218/131 x 0.00 38.10; END
Beispiel (polare Quelle, aus der Alt-Dokumentation)
TRANSFORMATION, NR = 8, P = 4, POLAR xx 80 114.3402 81.307, xx 20 18.4710 101.390, xx 30 324.5825 76.239; xx x 4001 x 201.3487 54.230; xx x 4002 x 187.0450 68.540; END
Verfügbarkeit und Besonderheiten
- Verfügbar in allen Bundesland-Versionen; sehr häufig in BW (Zahlenriss-Auswertung), daneben Anhalt, Sachsen, Thüringen, MyMWTs.
- Standard-Transformationstyp ist die Kongruenztransformation (P = 3) — anders als bei KSTRANSFORMATION und GRENZPRUEFUNG (dort P = 4).
- Verwandte Makros: KSTRANSFORMATION (Quelle ist ein VermCad-Koordinatensystem statt Wertespalten), MASCHENTRANSFORMATION/KSMASCHENTRANSFORMATION (maschenweise), VKTRANSFORMATION (verkettete Systeme), GRENZPRUEFUNG (nur Prüfung, keine Neupunkte).
- Zugehörige globale Optionen:
$SP_DEP_TRAFO(Abhängigkeitsausnahme inkl. Trafos, schaltet,NAfrei). - Alt-Dokumentation: Das Makro TRANSFORMATION.
Entwicklerhinweise
Diese Angaben richten sich an Entwickler bzw. eine KI mit Zugriff auf den VermCad-Quellcode; für die reine Nutzung der MWT-Syntax sind sie nicht nötig. Unit-Namen und besonders Zeilennummern können sich durch die laufende Weiterentwicklung verschieben - sie dienen als Einstieg, nicht als exakte Fundstelle.
Quellen im Code:
- VERMCAD\GlobalConsts.pas:1562 —
kwTransformation - VERMCAD\VCSCHMWT.PAS:2238-2266 —
ReadTransParameters: P = 3/4/5/6 (Lage), P| = 1/2 (Höhe) - VERMCAD\VCSCHMWT.PAS:5253-5265 — eingebettete ENTFERNUNGEN-Sektion; 6310, 6363 — Maß Pflicht + Gewicht
- VERMCAD\VCSCHMWT.PAS:6396-6421 — Passpunkt-Koordinaten (Pflicht, Fehler 77), Gewicht/GewX, Flags o/v
- VERMCAD\VCSCHMWT.PAS:5943-6002 — Neupunkte ab Satz 2 (Koordinaten Pflicht)
- VERMCAD\VCSCHMWT.PAS:3489-3493 —
POLAR; 3506-3512 —M; 3157-3175 —GEWX/GEWM; 3615-3619 —CVA - VERMCAD\VCSCHMWT.PAS:6542-6548 — keine Bedingungsflags (b/s) in Trafos (Fehler 66)
- VERMCAD\VCCALCVT.PAS:1303-1319 —
TTransformation_Base.Init: Default tt_3P für ca_Transformation - VERMCAD\GlobalTypConsts.pas:346-351 —
ca_PunktIdentWithoutVMA(keine VMA-Spalte)