Zum Inhalt springen

MWT Syntax-Globale Optionen

Aus VermCAD Hilfe Wiki
Version vom 17. Juli 2026, 10:39 Uhr von Claude (Diskussion | Beiträge) (MWT-Syntax-Referenz: regelbasierte Seite aus Task MWT_Syntax (Quellen: Compiler-Code + Bestands-MWTs))
(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)

Globale Optionen (Compiler-Anweisungen) verändern Einstellungen für das gesamte Projekt. Sie beginnen mit einem Dollarzeichen $, enden wie jeder Datensatz mit ; und dürfen nur am Dateianfang vor allen Datenblöcken stehen — sonst meldet der Compiler Fehler 110 („Compiler-Anweisung nicht am Anfang“). Die angegebenen Werte überschreiben die Einstellungen der Dialoge (z. B. „Zulässige Abweichungen“).

Syntaxregel

GlobaleOption ::=   '$' NAME ['+'|'-'] ';'          (boolescher Schalter; ohne Zeichen = '+')
                  | '$' NAME '=' Wert ';'            (Wert-Option)
                  | '$' NAME ('_'|'|') ['=' Wert] ';' (Suffix nur Lage / nur Höhe; nur $A und $EK)
Regelelement Bedeutung
+ / - Ein-/Ausschalter boolescher Optionen. Ohne Zeichen gilt +. Ein nachgestelltes - (auch mit Leerzeichen: $NOT_Z -;) bewirkt genau das Gegenteil der Option — damit lässt sich eine zentral (in den Programmoptionen) gesetzte Option für das aktuelle Projekt wieder abschalten.
_ / | Suffix „nur Lage“ bzw. „nur Höhe“ — nur bei $A und $EK (z. B. $A|=1; alle Höhenanschlüsse mit nur einem Passpunkt; $EK_; einfach vorgelegte Lageanschlusspunkte). Ohne Suffix gilt die Option für Lage und Höhe.
Wert w = reelle Zahl (Meter bzw. Gon), a = ganze Zahl, sonst Sonderwerte laut Tabelle. Negative Zahlenwerte sind unzulässig.

Compiler-Anweisungen (Schalter)

Option Bedeutung Bundesland
$NE; Fehlerprüfung aus: es wird nur bei fatalen Fehlern angehalten. alle
$NO_CHECK_NRVSK; keine Prüfung Punktnummer gegen Kennzahl alle
$KONTROLLEN; in jedem Messungsblock muss wenigstens eine Abschlusskontrolle vorhanden sein alle
$VRK; jede freie Stationierung standardmäßig mit Verteilung der Restklaffen (wirkt nur in Messblöcken, nicht in Transformations-Makros) alle
$VRK_GNSS; (alt: $VRK_GPS) wie $VRK, beschränkt auf GNSS-Messungen alle
$TT_4P; jede freie Stationierung standardmäßig mit Maßstab (4 Parameter) alle
$TR; jeder Anschluss eines Messblocks als Transformation/Einzelpunktausgleichung (niemals Abriss mit anschließender Polarpunktberechnung) alle
$EA; alle freien Stationierungen stets als Einzelpunktausgleichung (sonst bevorzugt Transformation) alle
$NOT_Z; keine Höhenauswertung (Prüfung von Z = … aus); $NOT_Z-; aktiviert die Höhenprüfung im Einzelfall wieder alle
$FN; freie Reihenfolge der Datensätze in Netzmessungen (Prüfung auf „schulmäßiges Messen“ aus); Netzausgleichungen als freies Netz alle
$GK_HD; alle aufgeführten Schrägstrecken sind bereits Gauß-Krüger-reduziert alle außer Sachsen-Anhalt
$FL_RN; Flächenberechnungen mit zuvor gerundeten Koordinaten alle außer Sachsen-Anhalt
$FL_MM; Flächen mit auf mm gerundeten Koordinaten berechnen alle außer Sachsen-Anhalt
$FL_RR; Flächen-Bogenberechnung über Nicht-Flächen-Hilfspunkte erlauben alle außer Sachsen-Anhalt
$KOO_SORT_A; Koordinatenverzeichnis nach Punktart sortieren alle außer Sachsen-Anhalt
$UseLSKoordinatenSysteme; Koordinatensysteme je Lagestatus automatisch anlegen alle
$NTRAFO_LHS; automatische Transformation der Vorgabenblöcke (VORGABEN, SOLLWERTE) in das Auftragskoordinatensystem aus alle
$TRAFO_LHS_EINZ; LHS-Transformation einzeln je Block alle
$NO_NTv2_TRAFO; keine automatische NTv2-Transformation alle
$WITH_H_PUNKTE; H-Punkte (Hilfspunkte) mitführen alle
$NO_CYCLE_DEP; keine zyklischen Abhängigkeiten unterstützen alle
$NORMAL_DEP; keine Ausnahmeregel für Durchfluchtung (normale Abhängigkeitslogik) alle
$SP_DEP_TRAFO; Transformationen in die Ausnahmeregel (nur VKT) einbeziehen alle
$GNSS_NM_FIRST; (alt: $GPS_NM_FIRST) GNSS-Netzmessungen vor Netzmessungen auswerten alle
$LRI_FE_MP; längenabhängiger Richtungsfehler nach der Methode von M. Pröseler alle
$CALC_GRAF_PKT_NO_WARN; keine Warnung bei Berechnungen mit grafischen Punkten (DES ≥ 4000); Warnung bei ALKIS-Flächenberechnungen bleibt alle
$EK; (auch $EK_; / $EK|;) „Einzelkoordinaten“: einfach vorgelegte Anschlusspunkte verwendbar (Standard: erst nach doppelter Aufmessung); Suffix für nur Lage / nur Höhe alle
$ELL; Fehlerellipsen auch bei unkontrollierten Beobachtungen berechnen/anzeigen (VKT) alle
$DOPPELTBERNR; doppelte Berechnungsnummern zulassen alle
$OLDVRK; Festpunkt-Auswahlverfahren der Restklaffenverteilung im Makro „Verkettete Transformationen“ wie vor Version 4.4 alle
$OptimizeWeights; Gewichte in Ausgleichungen skalieren alle
$UseIndividualMeanYForReduction; UTM-Reduktion mit individuellem Maßstab je Punkt alle
$NBZ7; Nummerierungsbezirke 7-stellig ausgeben alle

Compiler-Anweisungen (Wert-Optionen)

Option Syntax Bedeutung Bundesland
$A $A = a; (auch $A_ = a; / $A| = a;) Default-Anzahl der Passpunkte für alle Messblöcke des Projekts (entspricht lokaler Option A=); Wert ≥ 2; ohne Suffix: Lage = a, Höhe = a−1 alle
$VRK $VRK = s|s2|s32; Art der Restklaffenverteilung (entspricht den zentralen Optionen „Anschlüsse“). Weist noch nicht an, dass alle Blöcke mit VRK anzuschließen sind — dazu zusätzlich $VRK; setzen. alle
$PCT_Ausgl $PCT_Ausgl = 1..3; Parallel-Computing-Typ der Ausgleichung (1 = aus, 2 = parallel, 3 = parallel optimiert) alle
$AutoGoDown $AutoGoDown = 1..3; automatisches # (Untergang) für grafische gemessene Punkte alle
$UTMZone $UTMZone = Auto|31|32|33; UTM-Zone des LS 489 im Auftrag alle
$VKS489Y $VKS489Y = 6|7|8; Vorkommastellen des Rechtswerts im LS 489 in den Drucklisten alle
$KooSymTranslator $KooSymTranslator = <Dateipfad>; externe Übersetzungstabelle für Symbole beim Koordinatenexport (Dateisyntax je Zeile: VermCad-Symbol externes-Symbol;); relative Pfade ab Projektverzeichnis alle

Zulässige Abweichungen (Toleranz-Optionen)

Syntax jeweils $NAME = w; (w = reelle Zahl; Meter bzw. Gon). Die Werte überschreiben den Dialog „Zulässige Abweichungen“.

Option Bedeutung Bundesland
$AP_YX zulässige Abweichung für Anschlusspunkte alle
$OP_SI zulässige Soll-Ist-Abweichung alle
$OP_YX zulässige Abweichung für Doppelmessungen (Lage) alle
$OP_Z zulässige Abweichung für Höhen alle
$OP_sL zulässige Abweichung sL aus Mehrfachmessungen nur Sachsen-Anhalt
$NM_Hz zulässige Abweichung für Richtungen (Netzmessung) alle
$NM_HD zulässige Abweichung für Horizontalstrecken in Netzmessungen alle
$NM_Z zulässige Abweichung für Höhen in Netz-/Nivellementmessungen alle
$WS_D zulässige Abweichung für Entfernungskontrollen (Strecken und Radien) alle
$TA_RK zulässige Restklaffung für Anschlüsse alle
$TA_RA zulässiger relativer Abstand vom Passpunktfeld alle
$TA_AB zulässige Abhängigkeit(stiefe) eines Standpunktes (ganze Zahl) alle
$PZ_W zulässiger Winkelfehler für Polygonzug alle
$PZ_L zulässiger Längsfehler für Polygonzug alle
$PZ_Q zulässiger Querfehler für Polygonzug alle
$SO_SW kleinster zulässiger Schnittwinkel alle
$SO_TS Trennschärfe für Nachbarschaftsprüfung alle
$SO_EX zulässige Exzentrizität (relativ zur Entfernung des Prismas) alle
$SV_YX zulässige Abweichung für Sicherungsvermessungen nur Sachsen-Anhalt
$SV_SP zulässiger Abstand zwischen den Standpunkten einer Sicherungsvermessung nur Sachsen-Anhalt
$SO_RE zulässiger relativer Abstand zu den Bezugspunkten nur Sachsen-Anhalt

Dezimalstellen für Listenausgaben

Syntax jeweils $NAME = a; (ganze Zahl, maximal 10).

Option Bedeutung Standard Bundesland
$YXDeci Dezimalstellen für Y und X 3 alle
$ZDeci Dezimalstellen für Z 3 alle
$HzDeci Dezimalstellen für Richtungen 4 alle
$HDDeci Dezimalstellen für Strecken 3 alle
$VDeci Dezimalstellen für Vertikalwinkel 4 alle
$MFDeci Dezimalstellen für mittlere Fehler — alle
$NASDeci Dezimalstellen für NAS-Ausgaben — alle

Bundeslandspezifische Optionen

Option Bedeutung Bundesland
$KVZ_CM; Koordinatenverzeichnis standardmäßig mit auf cm gerundeten Koordinaten nur Sachsen
$MESS_PID; für PID-Nachweis und Entfernungskontrollen (Maßbandkontrollen) werden Messwerte den Soll-Vorgaben vorgezogen nur Brandenburg
$RRRRHHHH; 4+4-stellige Nummernlogik (RRRRHHHH) nur Thüringen
$ROUND_CALCULATED_COO; berechnete Koordinaten runden („BW-Rundung“) nur Baden-Württemberg
$ML_CURVE_COO_Y_0; Messungslinienprotokoll: Rechtswert 0.0 ausgeben nur Baden-Württemberg
$AlkisDefaultZST = a; überstimmt die zentrale Einstellung der zuständigen Stelle (gültiger Dienststellenschlüssel, z. B. 130101) nur Mecklenburg-Vorpommern
$FSIV; keine strenge Prüfung in Sicherungsvermessungen (freie SiV) nur Sachsen-Anhalt
$NN; Sicherungsvermessungen nicht mit dem gemessenen Netz abgleichen nur Sachsen-Anhalt
$SIV_SP; Standpunkte der Sicherungsvermessungen im LTK bereitstellen nur Sachsen-Anhalt
$LTK_GK; LTK-Strecken stets aus Gauß-Krüger-Koordinaten berechnen, auch wenn originäre Strecke vorliegt nur Sachsen-Anhalt
$No15LTK; LTK-Sonderlogik (kein 15er-LTK) nur Sachsen-Anhalt
$NLS; Transformation LSYX → YX aus (stellt sonst nur im Lagestatus 150 gegebene Koordinaten im LTK bereit) nur Sachsen-Anhalt
$LGLZ47_22; LG/LZ-Ersetzungslogik (47 → 22) nur Sachsen-Anhalt

Beispiele

$NE;                       { nur fatale Fehler melden                        }
$NOT_Z -;                  { zentral gesetztes NOT_Z projektweise aufheben   }
$A|=1;                     { alle Höhenanschlüsse mit nur einem Passpunkt    }
$EK_;                      { einfach vorgelegte Lageanschlusspunkte          }
$VRK = s2;                 { Verfahren der Restklaffenverteilung festlegen   }
$VRK;                      { ... und alle Messblöcke mit VRK anschließen     }
$AP_YX = 0.04;             { Toleranz Anschlusspunkte 4 cm                   }
$YXDeci = 2;               { Y/X-Listen mit 2 Dezimalstellen                 }
$UTMZone = 32;             { UTM-Zone des LS 489                             }
$KooSymTranslator = C:\temp\translate.txt;

AUFTRAG                    { ab hier keine $-Optionen mehr erlaubt }
  ...
END

Verfügbarkeit und Besonderheiten

  • Position: nur am Dateianfang vor allen Datenblöcken; danach Fehler 110.
  • Groß-/Kleinschreibung ist wie überall bedeutungslos ($ne; = $NE;).
  • Wertprüfungen des Compilers: $A ≥ 2 (Fehler 50), $PCT_Ausgl/$AutoGoDown ∈ 1..3 (Fehler 59/99), $VKS489Y ∈ 6..8 (Fehler 49), $UTMZone ∈ {Auto, 31, 32, 33} (Fehler 47); negative Zahlenwerte unzulässig (Fehler 26/42).
  • Aliase alter Schreibweisen: $VRK_GPS → $VRK_GNSS, $GPS_NM_FIRST → $GNSS_NM_FIRST.
  • Die Alt-Dokumentation nennt für Sachsen eine Option $OldVMA; (alte, einstellige Vermarkungsarten) — sie ist im aktuellen Parser nicht mehr vorhanden (veraltet).
  • Veraltet und nicht mehr unterstützt: $NO_NV_NR_Index (wird gesammelt überlesen).
  • Bundesland-Zuordnung beachten: In der jeweils „fremden“ Bundesland-Version ist eine bundeslandspezifische Option unbekannt und erzeugt einen Fehler.

Quellen im Code

  • VERMCAD\VCSCHMWT.PAS:807-938 — HandleAssignment (Verarbeitung aller $-Optionen inkl. Bundesland-Defines)
  • VERMCAD\VCSCHMWT.PAS:3982-4023 — Erkennung der $-Anweisungen, Suffixe _/|, +/--Schalter
  • VERMCAD\VCSCHMWT.PAS:4038 — Fehler 110 „Compiler-Anweisung nicht am Anfang“
  • VERMCAD\VCSCHMWT.PAS:4049-4056 — $KooSymTranslator; VCSCHMWT.PAS:4058-4068 — $UTMZone (Auto/31/32/33); VCSCHMWT.PAS:4078-4097 — Ganzzahl-Optionen mit Wertprüfung
  • VERMCAD\VCSCHMWT.PAS:866-879 — $A und $EK mit Lage-/Höhen-Suffix
  • VERMCAD\VcEditorUtils.pas:1927-2103 — Keyword-Tabelle (u. a. ID[kSingleCoo] := '$EK', Zeile 1976)
  • VERMCAD\GlobalConsts.pas:1732-1820 — Namenskonstanten der Optionen (kwNotErrorCheck … kwNASDecimals)
  • VERMCAD\VcToleranz.pas:945-975 — $-Bezeichner der Toleranz-Optionen (GetIdentStr, tls_Ident)
  • VERMCAD\GlobalTypes.pas:1516-1693 — Enum TBlockKind (Abschnitt der Compiler-Anweisungen)



[Nach oben]