Zum Inhalt springen

MWT Syntax-Makro GRENZPRUEFUNG: Unterschied zwischen den Versionen

Aus VermCAD Hilfe Wiki
Sachkorrektur nach dem Code: Überschreitung hält die Berechnung an (außer NE/$NE); Richtung außerhalb und in Baden-Württemberg; Toleranz ohne ZP ist $WS_D bzw. die Streckenabweichung, nicht $OP_SI; Passpunkt braucht mindestens einen örtlichen Wert; Prüfpunkte haben Abweichungen statt Restklaffen
Entwicklerhinweise: Zeilennummern an den Code vom 18.09.2026 angeglichen
Zeile 112: Zeile 112:


'''Quellen im Code:'''
'''Quellen im Code:'''
* VERMCAD\GlobalConsts.pas:1566-1567 — <code>kwGrenzpruefung</code>, <code>kwGrenzpruefungOld = 'GRENZERMITTLUNG'</code>
* VERMCAD\GlobalConsts.pas:1644-1645 — <code>kwGrenzpruefung</code>, <code>kwGrenzpruefungOld = 'GRENZERMITTLUNG'</code>
* VERMCAD\VCSCHMWT.PAS:4017 — Ersetzung der Alt-Schreibweise (<code>ReplaceOldKeyWord</code>)
* VERMCAD\VCSCHMWT.PAS:4033 — Ersetzung der Alt-Schreibweise (<code>ReplaceOldKeyWord</code>)
* VERMCAD\VCSCHMWT.PAS:6656-6681 — Koordinaten (MissA = TRUE, EofA = TRUE), Fehler 77 im Passpunkt-Satz (mindestens ein Wert, Text VcSCheck.pas:3192-3193), Gewicht/GewX, kein Flag <code>v</code>; VCANS.PAS:1195-1205 <code>IsValidPass</code> (außerhalb BW genügt ein Wert)
* VERMCAD\VCSCHMWT.PAS:6656-6681 — Koordinaten (MissA = TRUE, EofA = TRUE), Fehler 77 im Passpunkt-Satz (mindestens ein Wert, Text VcSCheck.pas:3192-3193), Gewicht/GewX, kein Flag <code>v</code>; VCANS.PAS:1195-1205 <code>IsValidPass</code> (außerhalb BW genügt ein Wert)
* VERMCAD\VCSCHMWT.PAS:5253-5265 — eingebettete ENTFERNUNGEN-Sektion (TransDistancePairs); 6310 Maß Pflicht; 6363 Gewicht
* VERMCAD\VCSCHMWT.PAS:5513-5525 — eingebettete ENTFERNUNGEN-Sektion (TransDistancePairs); 6570 Maß Pflicht; 6623 Gewicht
* VERMCAD\VCSCHMWT.PAS:2896-2897 — Kopf-Infos <code>M</code>/<code>GK_RED</code> auch in Folgesätzen
* VERMCAD\VCSCHMWT.PAS:2912-2913 — Kopf-Infos <code>M</code>/<code>GK_RED</code> auch in Folgesätzen
* VERMCAD\VCSCHMWT.PAS:3157-3222, 3689-3732 — <code>GEWX</code>, <code>GEWM</code>, Sortierungen, <code>FIXM</code>/<code>FIXN</code>, BW <code>APA</code>/<code>AWS</code>
* VERMCAD\VCSCHMWT.PAS:3173-3238, 3705-3748 — <code>GEWX</code>, <code>GEWM</code>, Sortierungen, <code>FIXM</code>/<code>FIXN</code>, BW <code>APA</code>/<code>AWS</code>
* VERMCAD\VCCALCVT.PAS:1343-1346 — Default-Transformationstyp (Grenzprüfung: tt_4P); 1434-1442 <code>SwapGrenzpruefungSourceDest</code> (Richtung außerhalb BW umgekehrt)
* VERMCAD\VCCALCVT.PAS:1343-1346 — Default-Transformationstyp (Grenzprüfung: tt_4P); 1434-1442 <code>SwapGrenzpruefungSourceDest</code> (Richtung außerhalb BW umgekehrt)
* VERMCAD\VCANS.PAS:5490-5522 — Toleranz ohne <code>ZP</code>: <code>ActErrorToleranz</code> (Prüfung: <code>PassLengthErrorExt</code> = <code>$WS_D</code>, sonst <code>PassLengthError</code>, 5088-5112) und <code>ActZP</code> (Kennzeichen <code>***</code> im Koordinatenvergleich: <code>PassLengthError</code>, über <code>AttentionStrDist</code> 3205-3217, Aufruf 9350/9498); <code>$OP_SI</code> nur in der BW-Katasterliste (<code>TTransformPunkte_BW.ResultList2</code>, 12891)
* VERMCAD\VCANS.PAS:5490-5522 — Toleranz ohne <code>ZP</code>: <code>ActErrorToleranz</code> (Prüfung: <code>PassLengthErrorExt</code> = <code>$WS_D</code>, sonst <code>PassLengthError</code>, 5088-5112) und <code>ActZP</code> (Kennzeichen <code>***</code> im Koordinatenvergleich: <code>PassLengthError</code>, über <code>AttentionStrDist</code> 3205-3217, Aufruf 9350/9498); <code>$OP_SI</code> nur in der BW-Katasterliste (<code>TTransformPunkte_BW.ResultList2</code>, 12891)
* VERMCAD\VCANS.PAS:5255-5294, 6646-6676 — <code>CheckMaxError</code>/<code>CheckKontrollError</code>: Überschreitung ist ein nicht fataler Fehler (GlobalTypes.pas:1088/1121), mit <code>NE</code>/<code>$NE</code> nur Hinweis (<code>ShowedErrorRemark</code>, 2099-2150); VCCALCVT.PAS:2305 reicht <code>NE</code> an die Transformation weiter
* VERMCAD\VCANS.PAS:5255-5294, 6646-6676 — <code>CheckMaxError</code>/<code>CheckKontrollError</code>: Überschreitung ist ein nicht fataler Fehler (GlobalTypes.pas:1088/1121), mit <code>NE</code>/<code>$NE</code> nur Hinweis (<code>ShowedErrorRemark</code>, 2099-2150); VCCALCVT.PAS:2305 reicht <code>NE</code> an die Transformation weiter
* VERMCAD\VCCALCVT.PAS:2677-2681 — Wirkung von <code>CVA</code> („verkettet mit Streckenausgleichung")
* VERMCAD\VCCALCVT.PAS:2723-2727 — Wirkung von <code>CVA</code> („verkettet mit Streckenausgleichung")


{{Hilfe:NachOben}}
{{Hilfe:NachOben}}
[[Kategorie:Blöcke mit Anweisungen (Makros)|GRENZPRUEFUNG]]
[[Kategorie:Blöcke mit Anweisungen (Makros)|GRENZPRUEFUNG]]

Version vom 18. September 2026, 10:38 Uhr

Das Rechenmakro GRENZPRUEFUNG (Alias, veraltet: GRENZERMITTLUNG) prüft die Lage örtlich aufgemessener Grenzpunkte gegen den Katasternachweis. Aus den Passpunkten wird eine Transformation bestimmt; für die Prüfpunkte wird nur die Abweichung zwischen gegebener und berechneter Lage ermittelt und dokumentiert — es werden keine Koordinaten produziert. Außerhalb Baden-Württembergs ist das technisch eine „umgekehrte Transformation ohne Neupunkte": Transformiert wird ins örtliche System. In Baden-Württemberg transformiert VermCad in der gewohnten Richtung vom örtlichen System in das System des Projekts; die Abweichungen der Prüfpunkte bildet es über die Rücktransformation weiterhin im örtlichen System. Überschreiten Restklaffen oder Abweichungen den zulässigen Wert, hält die Berechnung mit einer Fehlermeldung an (siehe Verfügbarkeit und Besonderheiten).

Syntaxregel

GRENZPRUEFUNG [, KOORDINATENSYSTEM <n> | , LS <n>] [, <Kopf-Parameter>]*
  <Passpunkt> { , <Passpunkt> }* ;                (Satz 1: Passpunkte)
  { <Pruefpunkt> { , <Pruefpunkt> }* ; }*         (weitere Sätze: Prüfpunkte)
  [ ENTFERNUNGEN [, M = <w>]
    { <NV> [<A>] <NR>  <NV> [<A>] <NR>  <Maß> [<Gew>] [o] ; }* ]
END[;]

<Passpunkt>  ::= <NV> <NR>  <Y> <X>  [<Gew> [<GewX>]]  [o]
<Pruefpunkt> ::= <NV> <NR>  [<Y> [<X>]]  [<Gew> [<GewX>]]
Regelelement Bedeutung
<Passpunkt> Punkt mit örtlichen Koordinaten Y X (im Passpunkt-Satz muss mindestens einer der beiden Werte stehen, sonst Fehler 77 „Keine Daten (Abszisse, Ordinate, Richtung, ...) gegeben"; außerhalb Baden-Württembergs rechnet VermCad auch mit einem Passpunkt, der nur einen Wert hat, in Baden-Württemberg zählt ein Passpunkt nur mit beiden Werten); danach optional ein Gewicht (bei Kopf-Parameter GEWX zusätzlich ein eigenes X-Gewicht); Flag o = Punkt nicht als Passpunkt verwenden (passiv).
<Pruefpunkt> weitere Punkte (im Dialogfenster Kontrollpunkte), deren Abweichung zwischen gegebener und berechneter Lage im örtlichen System geprüft wird; örtliche Koordinaten dürfen unvollständig sein (nur Y oder Platzhalter x).
ENTFERNUNGEN eingebettete Spannmaß-Sektion (ab Satz 2 möglich): je Satz zwei Punkte mit Pflicht-Maß und optionalem Gewicht; o = Maß nicht verwenden. Optional eigener Maßstab M = w für die Sektion.

Das Flag v (Veränderung) ist in der Grenzprüfung — anders als in TRANSFORMATION — nicht zulässig.

Parameter

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

Parameter Syntax Pflicht Bedeutung Bundesland
Parameterzahl ,P = 3|4|5|6 nein Transformationstyp (3 = Kongruenz, 4 = Helmert, 5/6 = Affin); Standard bei GRENZPRUEFUNG: P = 4 (bei TRANSFORMATION: P = 3) alle
polare Quelle ,POLAR nein örtliche Werte sind Hz HD statt Y X alle
Toleranzen ,ZP = w / ,ZS = w nein zulässige Punktabweichung bzw. Spannmaßabweichung (ENTFERNUNGEN-Sektion) alle
Restklaffen ,VRK / ,VRK = s|s2|s32 nein nachbarschaftstreue Verteilung der Restklaffen alle
Maßstab ,M = w nein Multiplikator für die örtlichen Werte (auch reziprok M = 1/0.9987); in Folgesätzen für die ENTFERNUNGEN-Sektion erlaubt alle
Gewichte ,GEWX / ,GEWM = w nein getrennte Gewichte für X je Punkt zulassen / Gewichtsmaßstab alle
GK-Reduktion ,GK_RED nein Y/X-Werte Gauß-Krüger-reduzieren (auch in Folgesätzen erlaubt) alle
mittlerer Fehler ,MF_S = w / ,MF_YX = w nein a-priori-Fehler der Spannmaße bzw. der Koordinaten 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
gemeinsame VA ,CVA nein Transformation und Streckenausgleichung (ENTFERNUNGEN-Sektion) verkettet statt nacheinander ausgleichen alle
BW-Spezifika ,APA / ,AWS = n nein automatische Punktausscheidung / Auswerteschranke nur BW

Datenzeilen

  • Punktangabe in der Makro-Kurzform NV [A] NR (ohne VMA), siehe Punktidentifikation.
  • Satz 1 enthält die kommagetrennten Passpunkte mit örtlichen Koordinaten; er bestimmt die Transformation.
  • Weitere Sätze enthalten die Prüfpunkte (ebenfalls kommagetrennt möglich); für sie wird nur die Abweichung zwischen gegebener und berechneter Lage ausgewiesen (Ergebnisliste, Abschnitt Koordinatenvergleich).
  • Anders als beim Subsektions-Gebrauch in PUNKTIDENTITAET gibt es im eigenständigen Makro keinen RJ =-Satz und keine punktweisen REM-Angaben; die Quellenangabe gehört in KN = '…'/REM = '…' im Kopf.

Beispiele

Hinweis: VermCad ergänzt beim Speichern binäre Codierungszeilen (Nutzer/Änderungsdatum); diese sind in den Beispielen weggelassen.

Beispiel (Sachsen-Anhalt, echt)

GRENZPRUEFUNG, NR = 1, P = 3,
  DATUM = 22.02.2006,
  ZEIT = 13:23:48,
  PNR = 22,
  KN = '15'

  10       78366      -4.300      0.000,
  19       76415       0.000    275.000;

  19       76408       2.800    218.620,
  19       76414       5.200    256.300,
  10       78361      10.900    140.000;
END

Beispiel (Sachsen-Anhalt, mit Gewichten und unvollständigem Prüfpunkt)

GRENZPRUEFUNG, NR = 2, P = 3,
  DATUM = 22.02.2006, ZEIT = 13:30:02, PNR = 22, KN = '19'

  19       76408       0.000      0.000      100.0,
  19       76414       0.000     38.100        1.0;

  19       76409       0.000;
END

Der Prüfpunkt 76409 liegt auf der Geraden (nur die Ordinate 0.000 ist als örtlicher Wert gegeben).

Verfügbarkeit und Besonderheiten

  • Verfügbar in allen Bundesland-Versionen; beobachtet v. a. in Sachsen, BW, Brandenburg, Thüringen, Sachsen-Anhalt.
  • Alias: Das veraltete Schlüsselwort GRENZERMITTLUNG wird beim Übersetzen automatisch im Quelltext durch GRENZPRUEFUNG ersetzt.
  • Doppelrolle des Schlüsselworts: GRENZPRUEFUNG leitet innerhalb des Makros PUNKTIDENTITAET eine Untersektion mit abweichender Syntax ein (dort mit RJ =-Satz und punktweisen RJ/REM-Angaben) — diese Form ist auf der PUNKTIDENTITAET-Seite dokumentiert.
  • Standard-Parameterzahl ist P = 4 (Helmert). Ohne Angabe von ZP prüft VermCad Restklaffen und Abweichungen gegen die globale Option $WS_D (zulässige Differenz der Entfernungskontrolle), falls sie gesetzt ist, sonst gegen die zulässige Streckenabweichung für eine Strecke von der Länge des Radius des Passpunktfeldes. Das Kennzeichen *** der Prüfpunkte im Abschnitt Koordinatenvergleich der Ergebnisliste richtet sich ohne ZP stets nach dieser Streckenabweichung. $OP_SI (zulässige Soll-Ist-Abweichung) verwendet nur die Darstellung Kataster in Baden-Württemberg.
  • Überschreitung: Ist die größte Restklaffe eines Passpunktes bzw. die größte Abweichung eines Prüfpunktes größer als zulässig, hält die Berechnung mit Restklaffung = … bzw. Abweichung Soll-Ist = … an. Mit NE im Makrokopf (im Dialogfenster Fehler aus) oder der globalen Option $NE erscheint die Meldung nur als Hinweis; VermCad rechnet weiter und kennzeichnet die Überschreitung in der Ergebnisliste.
  • Brandenburg: mit $MESS_PID werden Messwerte den Soll-Vorgaben vorgezogen.

Siehe auch

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:1644-1645 — kwGrenzpruefung, kwGrenzpruefungOld = 'GRENZERMITTLUNG'
  • VERMCAD\VCSCHMWT.PAS:4033 — Ersetzung der Alt-Schreibweise (ReplaceOldKeyWord)
  • VERMCAD\VCSCHMWT.PAS:6656-6681 — Koordinaten (MissA = TRUE, EofA = TRUE), Fehler 77 im Passpunkt-Satz (mindestens ein Wert, Text VcSCheck.pas:3192-3193), Gewicht/GewX, kein Flag v; VCANS.PAS:1195-1205 IsValidPass (außerhalb BW genügt ein Wert)
  • VERMCAD\VCSCHMWT.PAS:5513-5525 — eingebettete ENTFERNUNGEN-Sektion (TransDistancePairs); 6570 Maß Pflicht; 6623 Gewicht
  • VERMCAD\VCSCHMWT.PAS:2912-2913 — Kopf-Infos M/GK_RED auch in Folgesätzen
  • VERMCAD\VCSCHMWT.PAS:3173-3238, 3705-3748 — GEWX, GEWM, Sortierungen, FIXM/FIXN, BW APA/AWS
  • VERMCAD\VCCALCVT.PAS:1343-1346 — Default-Transformationstyp (Grenzprüfung: tt_4P); 1434-1442 SwapGrenzpruefungSourceDest (Richtung außerhalb BW umgekehrt)
  • VERMCAD\VCANS.PAS:5490-5522 — Toleranz ohne ZP: ActErrorToleranz (Prüfung: PassLengthErrorExt = $WS_D, sonst PassLengthError, 5088-5112) und ActZP (Kennzeichen *** im Koordinatenvergleich: PassLengthError, über AttentionStrDist 3205-3217, Aufruf 9350/9498); $OP_SI nur in der BW-Katasterliste (TTransformPunkte_BW.ResultList2, 12891)
  • VERMCAD\VCANS.PAS:5255-5294, 6646-6676 — CheckMaxError/CheckKontrollError: Überschreitung ist ein nicht fataler Fehler (GlobalTypes.pas:1088/1121), mit NE/$NE nur Hinweis (ShowedErrorRemark, 2099-2150); VCCALCVT.PAS:2305 reicht NE an die Transformation weiter
  • VERMCAD\VCCALCVT.PAS:2723-2727 — Wirkung von CVA („verkettet mit Streckenausgleichung")



[Nach oben]