MWT Syntax-Makro KSTRANSFORMATION: Unterschied zwischen den Versionen
Claude (Diskussion | Beiträge) MWT-Syntax-Referenz: regelbasierte Seite aus Task MWT_Syntax (Quellen: Compiler-Code + Bestands-MWTs) |
Claude (Diskussion | Beiträge) MWT-Syntax-Referenz: regelbasierte Seite aus Task MWT_Syntax (Quellen: Compiler-Code + Bestands-MWTs) |
||
| Zeile 1: | Zeile 1: | ||
{{DISPLAYTITLE: | {{DISPLAYTITLE:Makro KSTRANSFORMATION}} | ||
Das Rechenmakro KSTRANSFORMATION (Systemtransformation) transformiert Punkte aus einem in VermCad gespeicherten Quell-Koordinatensystem in das System des Auftrags. Anders als bei [[MWT Syntax-Makro TRANSFORMATION|TRANSFORMATION]] stehen die Quellkoordinaten nicht im Makro, sondern im referenzierten Koordinatensystem — die Datensätze enthalten nur Punkt(paar)e: Punktnummer im Quellsystem und (optional) die Zielpunktnummer im Auftrag. | Das Rechenmakro KSTRANSFORMATION (Systemtransformation) transformiert Punkte aus einem in VermCad gespeicherten Quell-Koordinatensystem in das System des Auftrags. Anders als bei [[MWT Syntax-Makro TRANSFORMATION|TRANSFORMATION]] stehen die Quellkoordinaten nicht im Makro, sondern im referenzierten Koordinatensystem — die Datensätze enthalten nur Punkt(paar)e: Punktnummer im Quellsystem und (optional) die Zielpunktnummer im Auftrag. | ||
| Zeile 118: | Zeile 118: | ||
* Alt-Dokumentation: [[MWT-Blöcke mit Anweisungen (Makros)-Das Makro KSTRANSFORMATION|Das Makro KSTRANSFORMATION]]. | * Alt-Dokumentation: [[MWT-Blöcke mit Anweisungen (Makros)-Das Makro KSTRANSFORMATION|Das Makro KSTRANSFORMATION]]. | ||
== Quellen im Code | == 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:1563 — <code>kwKsTransformation</code> | * VERMCAD\GlobalConsts.pas:1563 — <code>kwKsTransformation</code> | ||
* VERMCAD\VCSCHMWT.PAS:5139-5143 — Satz 1 enthält keine Punkte, Aufruf <code>ReadSourceKsNr</code> | * VERMCAD\VCSCHMWT.PAS:5139-5143 — Satz 1 enthält keine Punkte, Aufruf <code>ReadSourceKsNr</code> | ||
| Zeile 130: | Zeile 133: | ||
{{Hilfe:NachOben}} | {{Hilfe:NachOben}} | ||
[[Kategorie:MWT Syntax]] | [[Kategorie:MWT Syntax|Makro KSTRANSFORMATION]] | ||
Version vom 20. Juli 2026, 12:33 Uhr
Das Rechenmakro KSTRANSFORMATION (Systemtransformation) transformiert Punkte aus einem in VermCad gespeicherten Quell-Koordinatensystem in das System des Auftrags. Anders als bei TRANSFORMATION stehen die Quellkoordinaten nicht im Makro, sondern im referenzierten Koordinatensystem — die Datensätze enthalten nur Punkt(paar)e: Punktnummer im Quellsystem und (optional) die Zielpunktnummer im Auftrag.
Syntaxregel
KSTRANSFORMATION [, KOORDINATENSYSTEM <n> | , LS <n>] [, <Kopf-Parameter>]*
KS <QuellKsNr> | LS <Lagestatus> ; (Satz 1: Quellsystem)
<Passpunktpaar> { , <Passpunktpaar> }* ; (Satz 2: Passpunkte)
{ <Neupunktpaar> ; }* (je Satz ein Neupunkt)
[ ENTFERNUNGEN [, M = <w>]
{ <NV> [<A>] <NR> <NV> [<A>] <NR> <Maß> [<Gew>] [o] ; }* ]
END[;]
<Passpunktpaar> ::= <QuellPunkt> [<ZielPunkt>] [<Gew> [<GewX>]] [o] [v]
<Neupunktpaar> ::= <QuellPunkt> [<ZielPunkt> [<Flags>]]
<QuellPunkt> ::= <NV> [<A>] <NR> (Punkt im Quell-Koordinatensystem)
<ZielPunkt> ::= <NV> [<A>] <NR> (Punktnummer im Auftrag; xx xxxxx = gleiche Nummer)
| Regelelement | Bedeutung |
|---|---|
KS <n>; / LS <n>; |
Nummer des Quell-Koordinatensystems; bei LS wird das dem Lagestatus zugeordnete Koordinatensystem verwendet. Der Satz steht direkt nach den Kopf-Parametern und enthält keine Punkte (Fehler 72 „KS erwartet").
|
<ZielPunkt> |
Punktnummer, die der Punkt im Auftrag erhält. Fehlt sie (Satzende bzw. Komma direkt nach dem Quellpunkt) oder steht der Platzhalter xx xxxxx, behält der Punkt seine Nummer („virtueller Zielpunkt").
|
<Flags> |
Flags im Anschluss an die Zielpunktnummer, z. B. B* (vorhandene Vorgabe durch das Transformationsergebnis ersetzen); vgl. Flags.
|
o / v |
Passpunkt passiv setzen / Flag Veränderung. |
ENTFERNUNGEN |
eingebettete Spannmaß-Sektion (ab Satz 3 möglich), Syntax wie bei TRANSFORMATION. |
Parameter
Allgemeine Kopf-Parameter (NR =, DATUM =, ZEIT =, PNR =, KN =, REM =, NE, DEA) siehe Blockkopf-Parameter. Makrospezifisch (weitgehend wie TRANSFORMATION):
| Parameter | Syntax | Pflicht | Bedeutung | Bundesland |
|---|---|---|---|---|
| Parameterzahl | ,P = 3|4|5|6 |
nein | Transformationstyp; Standard: P = 4 (Helmert) | 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 je Passpunkt zulassen / Gewichtsmaßstab | alle |
| mittlere Fehler | ,MF_S = w / ,MF_YX = w |
nein | a-priori-Fehler der Spannmaße bzw. der Koordinaten | alle |
| GK-Reduktion | ,GK_RED |
nein | Quellwerte Gauß-Krüger-reduzieren | alle |
| KS-Reduzierer | ,KS_RED |
nein | KS-Trafo-Reduzierer verwenden (seit 28.09.2023) | alle |
| gemeinsame VA | ,CVA |
nein | Transformation verkettet mit der Streckenausgleichung rechnen | alle |
| Sortierung | ,SNR_P / ,SX_P / ,SNR_N / ,SX_N |
nein | Pass-/Neupunkte nach Nummer bzw. X sortieren | alle |
| Fixierungen | ,FIXM / ,FIXN |
nein | Maßstab bzw. Nachbarschaft fixieren | alle |
| BW-Spezifika | ,APA / ,AWS = n |
nein | automatische Punktausscheidung / Auswerteschranke | nur BW |
POLAR und M = sind bei KSTRANSFORMATION nicht zulässig (die Werte kommen aus dem Koordinatensystem).
Datenzeilen
- Punktangabe in der Makro-Kurzform ohne VMA, siehe Punktidentifikation.
- Satz 2 (Passpunkte, kommagetrennt): Punkte, die in Quellsystem und Auftrag koordiniert sind; optional Gewicht(e) nach dem Zielpunkt.
- Ab Satz 3 je Satz ein weiterer zu transformierender Punkt; die Zielpunktnummer darf komplett entfallen (Punkt behält seine Nummer).
- Fehlerquelle: wird in einem Paarsatz derselbe Quellpunkt doppelt aufgeführt, meldet der Compiler Fehler 104 („SourcePunkt bereits verwendet").
Beispiele
Hinweis: VermCad ergänzt beim Speichern binäre Codierungszeilen; sie sind hier weggelassen.
Beispiel (Thüringen, echt — Zielpunktnummern entfallen)
KSTRANSFORMATION, NR = 1, DATUM = 04.02.2015, ZEIT = 09:12:11, PNR = 2 KS 2; 43 40011 , 43 40617 , 43 30904 , 43 30902 ; 43 40623 ; 43 40796 ; 43 40798 ; END
Beispiel (aus der Alt-Dokumentation — Umnummerierung Quell- → Zielnummern)
KSTRANSFORMATION, NR = 5, DATUM = 31.07.2006, ZEIT = 15:05:20 KS 1; xx 1 60 20001 , xx 2 60 20002 , xx 3 60 20003 , xx 4 60 20005 ; xx 5 ; xx 6 ; END
Die lokalen Punkte 1-4 des Koordinatensystems 1 sind mit den Auftragspunkten 20001-20005 identisch (Passpunkte); die Punkte 5 und 6 werden unter ihrer bisherigen Nummer transformiert.
Verfügbarkeit und Besonderheiten
- Verfügbar in allen Bundesland-Versionen; beobachtet v. a. BW, Sachsen, Thüringen, Anhalt, MV.
- Das Quell-Koordinatensystem wird üblicherweise durch einen Block
VORGABEN KOORDINATENSYSTEM <n>(siehe VORGABEN) oder eine Digitalisierung/Fassade angelegt. - Standard-Transformationstyp ist die Helmert-Transformation (P = 4).
- Maschenweise Variante: KSMASCHENTRANSFORMATION.
- Alt-Dokumentation: Das Makro KSTRANSFORMATION.
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:1563 —
kwKsTransformation - VERMCAD\VCSCHMWT.PAS:5139-5143 — Satz 1 enthält keine Punkte, Aufruf
ReadSourceKsNr - VERMCAD\VCSCHMWT.PAS:3777-3793 —
ReadSourceKsNr:KS nbzw.LS n(LS→KS-Übersetzung), Fehler 72/26 - VERMCAD\VCSCHMWT.PAS:6234-6303 — Lesen der Zielpunktnummer, virtueller Zielpunkt bei
xxxxx, Flags nach der Zielpunktnummer - VERMCAD\VCSCHMWT.PAS:6213-6217 — Fehler 104 „SourcePunkt bereits verwendet"
- VERMCAD\VCSCHMWT.PAS:3887-3893 —
CheckNumberTerms: Zielpunkt-Erkennung abhängig vonGEWX - VERMCAD\VCSCHMWT.PAS:5255 — eingebettete ENTFERNUNGEN-Sektion ab Satz 3
- VERMCAD\VCSCHMWT.PAS:3076-3079 —
KS_RED(BlockKinds_With_KsTrafoRed, GlobalTypConsts.pas:411-415) - VERMCAD\VCCALCVT.PAS:1315-1319, 2682-2691 — Default tt_4P, Ergebnistitel „Quellsystem: …"