MWT Syntax-Block RICHTUNGEN: 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 43: | Zeile 43: | ||
</pre> | </pre> | ||
* '''RICHTUNGEN''' (VKT): ein Datensatz '''ohne Wert''' ist ein (neuer) Standpunkt; jeder Datensatz '''mit Wert''' ist eine Richtung in gon vom zuletzt genannten Standpunkt zum angegebenen Zielpunkt, optional gefolgt von einer individuellen Standardabweichung. Fehlt der Standpunkt-Satz vor weiteren Zielungen, gilt der letzte weiter. | * '''RICHTUNGEN''' (VKT): ein Datensatz '''ohne Wert''' ist ein (neuer) Standpunkt; jeder Datensatz '''mit Wert''' ist eine Richtung in gon vom zuletzt genannten Standpunkt zum angegebenen Zielpunkt, optional gefolgt von einer individuellen Standardabweichung. Fehlt der Standpunkt-Satz vor weiteren Zielungen, gilt der letzte weiter. | ||
* '''PARALLELEN''' (VKT): die Datensätze bilden '''im strikten Wechsel''' Anfangs- und Endpunkte von Strecken (2 Sätze = 1 Strecke); die Strecken des Abschnitts werden durch Parallelitätsbedingungen verknüpft. Optional kann am Streckensatz ein Parallelen-'''Abstand''' in m stehen (sonst gilt die Kopfangabe <code>PARABST</code>; ganz ohne Abstand wird nur die Richtungsgleichheit gefordert). | * '''PARALLELEN''' (VKT): die Datensätze bilden '''im strikten Wechsel''' Anfangs- und Endpunkte von Strecken (2 Sätze = 1 Strecke); die Strecken des Abschnitts werden durch Parallelitätsbedingungen verknüpft. Optional kann am Streckensatz ein Parallelen-'''Abstand''' in m stehen (sonst gilt die Kopfangabe <code>PARABST</code>; ganz ohne Abstand wird nur die Richtungsgleichheit gefordert). '''Wichtig:''' die Datensätze verlangen die '''volle Punktidentifikation mit A-Spalte''' (Punktart), z. B. <code>04 2 28 x ;</code> oder mit Platzhalter <code>04 x 28 x ;</code>; fehlt die A-Spalte (<code>04 28 x ;</code>), meldet der Compiler „Punkt hat keine Punktart". Die [[MWT Syntax-Block KOORDINATEN|KS-Formen]] (KSKOORDINATEN/KSDIG_KOORDINATEN) sind hier die Ausnahme — dort steht nur <code>NV NR Flag</code> ohne A-Spalte. | ||
== Parameter == | == Parameter == | ||
Version vom 18. Juli 2026, 02:59 Uhr
Die Schlüsselwörter RICHTUNGEN, HOEHENUNTERSCHIEDE, KREISELAZIMUTE und PARALLELEN sind keine eigenständigen Blöcke, sondern Beobachtungs- bzw. Bedingungsabschnitte innerhalb anderer Makros:
- RICHTUNGEN und PARALLELEN als Beobachtungslisten in VKTRANSFORMATION (wie die KOORDINATEN-Familie);
- RICHTUNGEN, ENTFERNUNGEN, KREISELAZIMUTE und SPANNMASSE_NETZ als Untersektionen in NETZAUSGLEICH;
- HOEHENUNTERSCHIEDE als Untersektion in NETZAUSGLEICH_HOEHE und NIVELLEMENT.
Syntaxregel
Form 1: Untersektionen in Netzausgleichungen
NETZAUSGLEICH, <MakroHeaderInfos>
<Punktliste> ; <Festpunkte> ; (siehe NETZAUSGLEICH)
[RICHTUNGEN {<P1> <P2> <mf> [o] ;}* ]
[ENTFERNUNGEN {<P1> <P2> <mf> [o] ;}* ]
[KREISELAZIMUTE {<P1> <P2> <Azimut> [<mf>] ;}* ]
[SPANNMASSE_NETZ {<P1> <P2> <Maß> [<mf>] ;}* ]
END[;]
NETZAUSGLEICH_HOEHE | NIVELLEMENT, <MakroHeaderInfos>
<Punktliste> ; <Festpunkte> ;
[HOEHENUNTERSCHIEDE {<P1> <P2> <mf> ;}* ]
END[;]
<P1>, <P2> ::= <NV> <NR> (P1 = Stand-/Anfangspunkt, P2 = Zielpunkt)
- RICHTUNGEN / ENTFERNUNGEN / HOEHENUNTERSCHIEDE: je Satz ein Punktpaar mit einer individuellen Standardabweichung
<mf>für genau diese Beobachtung; sie überschreibt den a-priori-Fehler des Blockkopfs (MF_Hzbzw.MF_HDbzw.MF_V/MF_HU). - KREISELAZIMUTE: je Satz eine zusätzliche absolute Richtungsbeobachtung (Kreiselazimut) von P1 nach P2: Pflichtwert
<Azimut>in gon, optional die Standardabweichung<mf>in gon (Default: KopfangabeMF_HzAbs). - SPANNMASSE_NETZ: je Satz eine Spannmaßkontrolle: Pflichtwert
<Maß>in m, optional<mf>(Default:MF_SNetz). - Flag
ohinter den Werten = Punkt kein Passpunkt (bei NETZAUSGLEICH_HOEHE nur Höhe). - Jede Untersektion darf höchstens einmal je Block vorkommen; jeder Satz endet mit
;.
Form 2: Beobachtungslisten in VKTRANSFORMATION
RICHTUNGEN [, SYSID = '<n>'] [, TITEL = '<text>'] [, MF_Hz = <w>] [, DEA] [, REM = '…']
<Standpunkt> ;
{<Zielpunkt> <Richtung> [<mf>] ;}*
{ <Standpunkt> ; {<Zielpunkt> <Richtung> [<mf>] ;}* }*
PARALLELEN [, SYSID = '<n>'] [, PARABST = <w>] [, MF_S = <w>] [, MF_PAR = <w>] [, DEA] [, REM = '…']
<StreckenAnfang> ;
<StreckenEnde> [<Abstand>] ;
<StreckenAnfang> ;
<StreckenEnde> [<Abstand>] ;
- RICHTUNGEN (VKT): ein Datensatz ohne Wert ist ein (neuer) Standpunkt; jeder Datensatz mit Wert ist eine Richtung in gon vom zuletzt genannten Standpunkt zum angegebenen Zielpunkt, optional gefolgt von einer individuellen Standardabweichung. Fehlt der Standpunkt-Satz vor weiteren Zielungen, gilt der letzte weiter.
- PARALLELEN (VKT): die Datensätze bilden im strikten Wechsel Anfangs- und Endpunkte von Strecken (2 Sätze = 1 Strecke); die Strecken des Abschnitts werden durch Parallelitätsbedingungen verknüpft. Optional kann am Streckensatz ein Parallelen-Abstand in m stehen (sonst gilt die Kopfangabe
PARABST; ganz ohne Abstand wird nur die Richtungsgleichheit gefordert). Wichtig: die Datensätze verlangen die volle Punktidentifikation mit A-Spalte (Punktart), z. B.04 2 28 x ;oder mit Platzhalter04 x 28 x ;; fehlt die A-Spalte (04 28 x ;), meldet der Compiler „Punkt hat keine Punktart". Die KS-Formen (KSKOORDINATEN/KSDIG_KOORDINATEN) sind hier die Ausnahme — dort steht nurNV NR Flagohne A-Spalte.
Parameter
Form 1 (Netz-Untersektionen) hat keine eigenen Parameter — die zugehörigen a-priori-Fehler stehen im Kopf des Netzausgleich-Makros. Form 2 (VKT-Abschnitte):
| Parameter | Syntax | Pflicht | Bedeutung | Bundesland |
|---|---|---|---|---|
| System-ID / Titel | ,SYSID = '<n>' / ,TITEL = '…' |
nein | wie bei der KOORDINATEN-Familie | alle |
| Richtungsfehler | ,MF_Hz = w (gon) |
nein | nur RICHTUNGEN: a-priori-Fehler der Richtungen | alle |
| Parallelen-Abstand | ,PARABST = w (m) |
nein | nur PARALLELEN: Soll-Abstand der parallelen Strecken (Default für alle Strecken des Abschnitts) | alle |
| Abstandsfehler | ,MF_S = w (m) |
nein | nur PARALLELEN: a-priori-Fehler des Abstands | alle |
| Parallelitätsfehler | ,MF_PAR = w (gon) |
nein | nur PARALLELEN: a-priori-Fehler der Parallelität (Verdrehung) | alle |
| deaktiviert / Bemerkung | ,DEA / ,DEA_CAD / ,REM = '…' |
nein | Abschnitt deaktivieren bzw. kommentieren | alle |
Datenzeilen
Punktangabe in der Makro-Kurzform NV [A] NR [Flags], siehe Punktidentifikation. Werte sind reine Zahlen ohne Bezeichner (keine Hz =-Schreibweise); Richtungen/Azimute in gon, Strecken/Abstände/mittlere Fehler Lage in m.
Beispiele
Beispiel (Sachsen, NETZAUSGLEICH mit Untersektionen — gekürzt)
NETZAUSGLEICH, NR = 1, L = 1, L = 1001, MF_Hz = 0.001, MF_HD = 0.003, MF_ZU = 0.002, MF_HDr = 2.0, DATUM = 09.06.2020, ZEIT = 14:27:06 15 5, 15 61, xx K2, 03 2500, 03 3700; 03 2500 x 0.0500, 03 3700 x 0.0500, 15 61 99.0000 99.0000; RICHTUNGEN 03 3700 03 12813 99.0000; 15 61 03 3700 99.0000; ENTFERNUNGEN 03 2500 15 61 99.0000; 03 3700 15 61 99.0000; KREISELAZIMUTE xx 2014 xx MP4 264.2116 6.2000; xx 2014 xx 2048 54.1656 0.0050; END
Beispiel (Sachsen, NETZAUSGLEICH_HOEHE mit HOEHENUNTERSCHIEDE — gekürzt)
NETZAUSGLEICH_HOEHE, NR = 2, L = 1, MF_V = 0.001, MF_HU = 0.002, DATUM = 08.04.2019, ZEIT = 14:27:45 15 5, 15 61, 03 2500; 03 2500 x 0.0200; HOEHENUNTERSCHIEDE xx K2 xx 3003 99.0000; 15 61 03 3700 99.0000; END
Beispiel (Sachsen, RICHTUNGEN als VKT-Beobachtungsliste)
RICHTUNGEN, SYSID = '23', TITEL = '0409N1A-BP_GN9', MF_Hz = 0.01 41 x 30047 x ; 41 x 30048 x 0.0000; A x 172 x 77.1792;
Standpunkt 30047 mit Richtungen 0.0000 gon nach 30048 und 77.1792 gon nach A 172.
Beispiel (Sachsen, PARALLELEN in einer VKTRANSFORMATION)
PARALLELEN, SYSID = '208', MF_S = 0.0000, MF_PAR = 0.0000 04 2 28 x ; 06 x 8 x ; 10 7 315 Q ; 74 2 206 x ; END
Die Strecke 28→8 soll parallel zur Strecke 315→206 sein; das END beendet hier den umgebenden VKTRANSFORMATION-Block. (VermCad ergänzt beim Speichern binäre Codierungszeilen; sie sind in allen Beispielen weggelassen.)
Verfügbarkeit und Besonderheiten
- Verfügbar in allen Bundesland-Versionen. Beobachtete Nutzung: KREISELAZIMUTE und HOEHENUNTERSCHIEDE fast ausschließlich Sachsen (Markscheidewesen, z. B. TU Freiberg); RICHTUNGEN v. a. Sachsen; PARALLELEN Sachsen, Sachsen-Anhalt, MV.
- KREISELAZIMUTE ist neu seit 31.08.2016 (interne Konstante
kwRichtungenAbsolut), PARALLELEN seit 13.07.2016, SPANNMASSE_NETZ seit 12.04.2017. - Das Schlüsselwort ENTFERNUNGEN ist dreifach belegt: eigenständiges Kontroll-Makro (siehe ENTFERNUNGEN), Spannmaß-Beobachtungsliste in VKTRANSFORMATION (Belegform: Von-Punkt-Satz ohne Wert, Ziel-Satz mit Maß) und Untersektion „individuelle Streckenfehler" im NETZAUSGLEICH — deshalb existiert für Spannmaßkontrollen im Netz das eigene Schlüsselwort SPANNMASSE_NETZ.
- Außerhalb der genannten Makros erzeugen die Schlüsselwörter einen Compilerfehler; die Abschnitte enden erst mit dem
ENDdes umgebenden Makros. - Die Erkennung eines Abschnittsbeginns setzt voraus, dass das erste Wort des Datensatzes länger als eine NV ist und nicht mit Ziffer oder
xbeginnt.
Quellen im Code
- GlobalConsts.pas:1531, 1533, 1582-1585 —
kwRichtungen,kwHoehenUnterschiede,kwParallelen(13.07.2016),kwRichtungenAbsolut = 'KREISELAZIMUTE'(31.08.2016),kwNetzSpannmasse = 'SPANNMASSE_NETZ' - VCSCHMWT.PAS:5267-5334 — Erkennung der Untersektionen in kNetzAusgleichYX/kNetzAusgleichZ/kNivellement (Fehler 400/71/257/731/406)
- VCSCHMWT.PAS:6443-6478 — Wertarten der Untersektionen: dk_MFa (individuelle Standardabweichung) bzw. dk_Hz + dk_MFaHz (Kreiselazimut) bzw. dk_MassX (Spannmaß); 6580-6586 — Flag
o - VCCALCNZ.PAS:2620-2624 — Speicherung: RICHTUNGEN/HOEHENUNTERSCHIEDE = [dk_MFa], KREISELAZIMUTE = [dk_Hz, dk_MFa]
- VCSCHMWT.PAS:6020-6032 — VKT: vaHz (Richtung + MF), vaPar (optionaler Abstand + MF); 3461-3468 —
PARABST; 3526-3572 — MF_Hz/MF_S/MF_PAR-Freigaben - VCCALCVT.PAS:6707-6729 — Wechsel FromPunktList/PunktList (Standpunkt-Wiederverwendung, PARALLELEN strikt im Wechsel)
- VcAusgl.pas:2238-2276 — Validierung Punktpaare, „erster FromPunkt muss gesetzt sein"; 2155 — Abstand als optionale Beobachtung der Parallelenbedingung
- GlobalTypes.pas:1959-1960 —
mfaHzAbsolut(MF_HzAbs),mfaSNetz(MF_SNetz)