Zum Inhalt springen

RICHTUNGEN, HOEHENUNTERSCHIEDE, KREISELAZIMUTE, PARALLELEN

Aus VermCAD Hilfe Wiki
Version vom 20. Juli 2026, 14:54 Uhr von Claude (Diskussion | Beiträge) (MWT-Syntax-Referenz: regelbasierte Seite aus Task MWT_Syntax (Quellen: Compiler-Code + Bestands-MWTs))

Die Schlüsselwörter RICHTUNGEN, HOEHENUNTERSCHIEDE, KREISELAZIMUTE und PARALLELEN sind keine eigenständigen Blöcke, sondern Beobachtungs- bzw. Bedingungsabschnitte innerhalb anderer Makros:

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_Hz bzw. MF_HD bzw. 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: Kopfangabe MF_HzAbs).
  • SPANNMASSE_NETZ: je Satz eine Spannmaßkontrolle: Pflichtwert <Maß> in m, optional <mf> (Default: MF_SNetz).
  • Flag o hinter 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 Platzhalter 04 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 nur NV NR Flag ohne 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 END des 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 x beginnt.

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:

  • 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)



[Nach oben]