Zum Inhalt springen

Makro KOORDINATENVERGLEICH

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

Das Rechenmakro KOORDINATENVERGLEICH berechnet die Koordinaten- und Lagedifferenz je zweier Punkte und prüft sie bei Bedarf gegen eine zulässige Lageabweichung. Mit der Kopf-Option Z werden zusätzlich die Höhen verglichen.

Syntaxregel

KOORDINATENVERGLEICH [, KOORDINATENSYSTEM <n> | , LS <n>] [, <Kopf-Parameter>]* [, Z]
  { <NV> [<A>] <NR>['#']   <NV> [<A>] <NR>['#']   [<zul> | x] ; }*
END
Regelelement Bedeutung
<NV> [<A>] <NR> Punktidentifikation (kurze Form, ohne VMA/Flags) der beiden zu vergleichenden Punkte. Wie bei ENTFERNUNGEN ist in den Editionen mit dem Compiler-Define A_NR (Brandenburg, Berlin, Sachsen-Anhalt) die A-Spalte (Punktart) hier Pflicht bei jedem der beiden Punkte und wird in der Zweipunkt-Zeile nicht automatisch ergänzt (fehlt sie, meldet der Compiler einen Fehler); Platzhalter x genügt. In den übrigen Editionen entfällt die A-Spalte. Suffix # = untergegangener Punkt/historischer Zweitwert — typischer Anwendungsfall: Vergleich Punkt gegen seinen Zwilling.
<zul> zulässige Lageabweichung in Metern; nur wenn geprüft (nicht nur berechnet) werden soll. x oder weglassen = nur Berechnung der Differenz.

Parameter

Allgemeine Kopf-Parameter (NR =, DATUM =, ZEIT =, PNR =, KN = '…', REM = '…', NE, DEA) siehe Blockkopf-Parameter. Makrospezifisch:

Parameter Syntax Pflicht Bedeutung Bundesland
KOORDINATENSYSTEM / LS , KOORDINATENSYSTEM <n> bzw. , LS <n> nein Vergleich in anderem Koordinatensystem bzw. Lagestatus alle
Z , Z nein zusätzlich Höhen vergleichen alle
ZP , ZP = <w> nein zulässige Punktabweichung (Blockvorgabe) alle

Datenzeilen

  • Jeder Datensatz enthält genau zwei Punktidentifikationen und endet mit ; (Pflicht).
  • Nach dem zweiten Punkt darf genau ein Wert stehen (zulässige Lageabweichung) — anders als bei ENTFERNUNGEN gibt es kein zweites Maß und kein REM je Datensatz.

Beispiele

Beispiel (allgemein, aus der Alt-Dokumentation)

KOORDINATENVERGLEICH, NR = 1, Z     { zusätzlich Höhen vergleichen }
  xx  1537       xx  1538    0.750;       { Berechnung und Prüfung }
  xx  1535       xx  1536;
  xx  1518       xx  1678;
  xx  1454       xx  1540;                        { nur Berechnung }

END

Beispiel (Sachsen, echt)

Vergleich aktueller Punkte gegen ihre historischen Zweitwerte (Suffix #), ohne Toleranzprüfung (x):

KOORDINATENVERGLEICH, NR = 14,
  DATUM = 11.06.2010,
  ZEIT = 11:10:14,
  PNR = 223

   5     63        5     63#        x   ;
   5     62        5     62#        x   ;
   5     60        5     60#        x   ;
END

Die binären Codierungszeilen ergänzt VermCad automatisch; sie sind hier weggelassen.

Verfügbarkeit und Besonderheiten

  • Verfügbar in allen Bundesland-Versionen, in echten Projekten aber selten (fast nur Sachsen).
  • Der Vergleich verändert keine Koordinaten (reine Kontrollberechnung ohne Koordinatenproduktion).
  • Für den Vergleich einer Strecke gegen ein gemessenes Maß stattdessen ENTFERNUNGEN verwenden; für den Soll-Ist-Nachweis ganzer Risse PUNKTIDENTITAET.
  • Alt-Dokumentation: Das Makro KOORDINATENVERGLEICH.

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\VcEditorUtils.pas:2062 — Keyword-Zuordnung ID[kKoordinatenVergleich] := kwKoordinatenVergleich
  • VERMCAD\VCSCHMWT.PAS:3334-3338 — Kopf-Option ,Z (WithZ; erlaubt in KOORDINATENVERGLEICH, KLEINPUNKTE, MESSLINIE)
  • VERMCAD\VCSCHMWT.PAS:6142-6205 — A-Spalten-Behandlung: In A_NR-Editionen erzwingt die Heuristik NumberNextTerms > 4 bei den Zweipunkt-Zeilen die Punktart-Spalte (kein automatisches Ergänzen wie bei Einzelpunkt-Makros)
  • VERMCAD\VCSCHMWT.PAS:6342-6348 — genau ein Wert je Satz (kein zweites Maß bei KOORDINATENVERGLEICH)
  • VERMCAD\VCSCHMWT.PAS:6631-6644 — Semikolon-Pflicht nach jedem Punktpaar
  • VERMCAD\VCDCHMWT.PAS:2635-2640 — Übernahme in TKoordinatenVergleich (WithZ, Punktpaare)
  • VERMCAD\VCCALC.PAS:137-145, 3081 ff. — TKoordinatenVergleich.CalculateItem



[Nach oben]