MWT Syntax-Makro GERADENSCHNITT
Erscheinungsbild
Das Rechenmakro GERADENSCHNITT berechnet den Schnittpunkt zweier Geraden und weist ihm die berechnete Koordinate als Bedingungskoordinate zu. Jede Gerade kann vor dem Schnitt parallel oder senkrecht verschoben werden.
Syntaxregel
GERADENSCHNITT [, KOORDINATENSYSTEM <n> | , LS <n>] [, <Kopf-Parameter>]*
<Gerade1> ; (Satz 1: Geradendefinition OHNE Maße)
[ {P <NV> <NR> | V <NV> <NR> | S = <w>} {, ...} ; ] (Satz 2, wahlweise: Verschiebung Gerade 1)
<Gerade2> ; (Satz 3: Geradendefinition OHNE Maße)
[ {P <NV> <NR> | V <NV> <NR> | S = <w>} {, ...} ; ] (Satz 4, wahlweise: Verschiebung Gerade 2)
<PBS-Schnittpunkt> ; (Satz 5: Punktidentifikation des Schnittpunktes)
END
| Regelelement | Bedeutung |
|---|---|
<Gerade1>, <Gerade2> |
Geradendefinition durch zwei (oder mehr, dann ausgleichende Gerade) kommagetrennte Punktangaben NV NR, siehe Bogen- und Liniendefinition. Einschränkung: Anlege- und Endmaße sind im GERADENSCHNITT nicht erlaubt.
|
P / V / S |
wahlweiser Verschiebesatz je Gerade: P NV NR = Parallele durch den Bezugspunkt, V NV NR = Senkrechte durch den Punkt, S = w = seitliche Parallelverschiebung um w Meter (positiv = nach rechts). Mehrere Angaben kommagetrennt kombinierbar (z. B. V xx 3025, S = -4.6;).
|
<PBS-Schnittpunkt> |
vollständige Punktidentifikation des Schnittpunktes (NV A NR VMA Flags); der Punkt erhält die Bedingungskoordinate. |
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 | Berechnung in einem anderen Koordinatensystem bzw. Lagestatus | alle |
| ZP | , ZP = <w> |
nein | zulässige Punktabweichung (Vergleich mit bereits vorhandener Koordinate des Schnittpunktes) | alle |
| NETZ | , NETZ |
nein | Ergebnis wird der Netzmessung zur Verfügung gestellt | alle |
Datenzeilen
- Satz 1 und Satz 3 definieren die beiden Geraden (je Zeile
NV NR ,…NV NR ;). Maße hinter den Punktnummern sind — anders als z. B. in KLEINPUNKTE oder MESSLINIE — nicht zulässig. - Nach jeder Geradendefinition darf ein Verschiebesatz mit den Schlüsselzeichen
P,VoderS =folgen (siehe oben); er muss auf derselben logischen Satzebene mit;enden. - Der letzte Satz enthält die Punktidentifikation des Schnittpunktes; VMA und Flags sind wahlweise (Platzhalter
x).
Beispiele
Beispiel (allgemein, aus der Alt-Dokumentation)
GERADENSCHNITT, NR = 3
{ NV NR }
xx 3001, { 1. Gerade }
xx 3000; { Anlege- und Endmaß sind hier nicht erlaubt }
{ NV NR }
xx 3017,
xx 3012; S = 7.50; { 2. Gerade, um 7.50 m nach rechts verschoben }
{ NV A NR VMA F }
xx x 3061 090 b; { Schnittpunkt }
END
Beispiel (Sachsen-Anhalt, echt)
Erste Gerade mit Parallelverschiebung durch einen Bezugspunkt (P 83 29508):
GERADENSCHNITT, NR = 57, DATUM = 23.11.2023, ZEIT = 11:38:12, PNR = 3 83 29506, 73 29503; P 83 29508; G53 313, 73 100_F; ... END
Die binären Codierungszeilen (Änderungsdatum/Nutzer) ergänzt VermCad automatisch; sie sind hier weggelassen.
Verfügbarkeit und Besonderheiten
- Verfügbar in allen Bundesland-Versionen; eines der häufigsten Rechenmakros überhaupt (in echten Projekten aller Länder verbreitet).
- Der Schnittpunkt erhält die Koordinate als Bedingungskoordinate (implizites Rücken bereits vorhandener Punkte).
- Werden mehr als zwei Punkte je Gerade angegeben, rechnet VermCad mit der ausgleichenden Geraden.
- Alt-Dokumentation: Das Makro GERADENSCHNITT.
Quellen im Code
- VERMCAD\VcEditorUtils.pas:2077 — Keyword-Zuordnung
ID[kGeradenSchnitt] := kwGeradenSchnitt - VERMCAD\VCSCHMWT.PAS:5507-5517 — Verschiebesätze (P/V/S) an geraden Satznummern (
LineExtInput) - VERMCAD\VCSCHMWT.PAS:5957-5960 — ab Satz 5 folgt die Punktidentifikation des Schnittpunktes
- VERMCAD\VCDCHMWT.PAS:2762-2773 — Satzzuordnung: 1/3 = Geraden, 2/4 = Verschiebung, 5 = Schnittpunkt;
,ZP-Übernahme - VERMCAD\VCCALC.PAS:7822-7889 —
TSchnitt(Basisklasse, 2 Geraden + Schnittpunkt)