MWT Syntax-Makro EINFLUCHTEN GERADE: Unterschied zwischen den Versionen
Claude (Diskussion | Beiträge) MWT-Syntax-Referenz: regelbasierte Seite aus Task MWT_Syntax (Quellen: Compiler-Code + Bestands-MWTs) |
Claude (Diskussion | Beiträge) Entwicklerhinweise: Zeilennummern an den Code vom 18.09.2026 angeglichen |
||
| (2 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt) | |||
| Zeile 1: | Zeile 1: | ||
{{DISPLAYTITLE: | {{DISPLAYTITLE:EINFLUCHTEN_GERADE (und EINFLUCHTEN_BOGEN)}} | ||
Die Rechenmakros EINFLUCHTEN_GERADE und EINFLUCHTEN_BOGEN (neu seit 03.07.2026) rücken alle angegebenen Punkte in eine Gerade bzw. in einen Kreisbogen ein. Sie entsprechen [[MWT Syntax-Makro LINIENELEMENTE|LINIENELEMENTE]] bzw. [[MWT Syntax-Makro BOGENELEMENTE|BOGENELEMENTE]], jedoch erhalten '''alle''' Elementpunkte automatisch das implizite Flag <code>B</code> (Bedingungskoordinate = Lotfußpunkt auf der Geraden/dem Bogen); ein punktweises <code>b</code> ist nicht nötig. Beide Makros werden auf dieser Seite dokumentiert. | Die Rechenmakros EINFLUCHTEN_GERADE und EINFLUCHTEN_BOGEN (neu seit 03.07.2026) rücken alle angegebenen Punkte in eine Gerade bzw. in einen Kreisbogen ein. Sie entsprechen [[MWT Syntax-Makro LINIENELEMENTE|LINIENELEMENTE]] bzw. [[MWT Syntax-Makro BOGENELEMENTE|BOGENELEMENTE]], jedoch erhalten '''alle''' Elementpunkte automatisch das implizite Flag <code>B</code> (Bedingungskoordinate = Lotfußpunkt auf der Geraden/dem Bogen); ein punktweises <code>b</code> ist nicht nötig. Beide Makros werden auf dieser Seite dokumentiert. | ||
| Zeile 85: | Zeile 85: | ||
'''Quellen im Code:''' | '''Quellen im Code:''' | ||
* VERMCAD\GlobalConsts.pas: | * VERMCAD\GlobalConsts.pas:1557-1558 — Schlüsselwörter <code>kwEinfluchtenGerade</code>/<code>kwEinfluchtenBogen</code> (neu 03.07.2026) | ||
* VERMCAD\VcEditorUtils.pas: | * VERMCAD\VcEditorUtils.pas:2068-2069 — Keyword-Zuordnungen <code>ID[kEinfluchtenGerade]</code>, <code>ID[kEinfluchtenBogen]</code> | ||
* VERMCAD\VCSCHMWT.PAS: | * VERMCAD\VCSCHMWT.PAS:5738-5740 — <code>R = …</code> im 2. Satz wie Bogenelemente (EINFLUCHTEN_BOGEN); 5763-5765 — Satzzählung wie Linienelemente (EINFLUCHTEN_GERADE) | ||
* VERMCAD\VCSCHMWT.PAS: | * VERMCAD\VCSCHMWT.PAS:6893-6894 — implizites <code>cfCurveCoo</code> für alle Elementpunkte; 2943 — <code>,B</code> zulässig; 3298-3300 — <code>,ZS</code> nur EINFLUCHTEN_GERADE; 3658 — <code>,ALL</code> nicht zulässig | ||
* VERMCAD\VCDCHMWT.PAS: | * VERMCAD\VCDCHMWT.PAS:2644-2701 — Übernahme in <code>TCurveItem</code> (inkl. Radius-Übernahme für EINFLUCHTEN_BOGEN) | ||
* VERMCAD\VCCALC.PAS: | * VERMCAD\VCCALC.PAS:295-301, 5699-5732 — <code>TEinfluchtungGerade</code>; 354-363, 6148-6181 — <code>TEinfluchtungBogen</code> (implizites Flag B vor der Berechnung, Auswertung nach allen anderen Berechnungen) | ||
{{Hilfe:NachOben}} | {{Hilfe:NachOben}} | ||
[[Kategorie: | [[Kategorie:Blöcke mit Anweisungen (Makros)|EINFLUCHTEN GERADE]] | ||
Aktuelle Version vom 18. September 2026, 10:38 Uhr
Die Rechenmakros EINFLUCHTEN_GERADE und EINFLUCHTEN_BOGEN (neu seit 03.07.2026) rücken alle angegebenen Punkte in eine Gerade bzw. in einen Kreisbogen ein. Sie entsprechen LINIENELEMENTE bzw. BOGENELEMENTE, jedoch erhalten alle Elementpunkte automatisch das implizite Flag B (Bedingungskoordinate = Lotfußpunkt auf der Geraden/dem Bogen); ein punktweises b ist nicht nötig. Beide Makros werden auf dieser Seite dokumentiert.
Syntaxregel
EINFLUCHTEN_GERADE [, KOORDINATENSYSTEM <n> | , LS <n>] [, <Kopf-Parameter>]*
<NV> [<A>] <NR> [<MassX>|x [<MassY>]] {, <NV> [<A>] <NR> [<MassX>|x [<MassY>]]}+ ; (Satz 1: Gerade, 2+ Punkte)
{ <NV> [<A>] <NR> {, <NV> [<A>] <NR>}* ; }* (einzufluchtende Punkte)
END
EINFLUCHTEN_BOGEN [, KOORDINATENSYSTEM <n> | , LS <n>] [, <Kopf-Parameter>]*
<NV> [<A>] <NR> [<Mass>|x] {, <NV> [<A>] <NR> [<Mass>|x]}* ; (Satz 1: Bogenpunkte, 1-3 Punkte)
[ R = <w> ; ] (Satz 2, wahlweise: Radius)
{ <NV> [<A>] <NR> {, <NV> [<A>] <NR>}* ; }* (einzufluchtende Punkte)
END
| Regelelement | Bedeutung |
|---|---|
| Satz 1 (Gerade) | Geradendefinition nach Bogen- und Liniendefinition: mindestens zwei Punkte; bei mehr als zwei Punkten ausgleichende Gerade. Wahlweise Anlege-/Endmaße und seitliche Maße wie bei LINIENELEMENTE. |
| Satz 1/2 (Bogen) | Bogendefinition: drei Punkte, zwei Punkte + Radius oder Mittelpunkt + Radius; Radius als eigener Satz R = w;, negativ zulässig — identisch zu BOGENELEMENTE.
|
| einzufluchtende Punkte | kurze Punktidentifikation; Trennung beliebig mit Komma oder Semikolon. Jeder Punkt wird beim Berechnen immer in die Gerade bzw. den Bogen gerückt (implizites Flag B); die Flags b/s dürfen zusätzlich angegeben werden, sind aber wirkungslos bzw. redundant.
|
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 anderem Koordinatensystem bzw. Lagestatus | alle |
| B | , B |
nein | zulässig, aber ohne zusätzliche Wirkung (Einrücken erfolgt ohnehin implizit) | alle |
| ZS | , ZS = <w> |
nein | zulässige Spannmaßabweichung — nur EINFLUCHTEN_GERADE | alle |
| ZP | , ZP = <w> |
nein | zulässige Punktabweichung beim Rücken | alle |
Die Option ,ALL von LINIENELEMENTE ist beim Einfluchten nicht erlaubt (alle Punkte des Projekts einzurücken wäre sinnlos).
Datenzeilen
- Aufbau identisch zu LINIENELEMENTE bzw. BOGENELEMENTE; kein Punkt darf doppelt in den Elementpunkten stehen.
- Die Einfluchtungs-Makros werden intern stets nach allen anderen Berechnungen ausgewertet (Reihenfolge in der MWT-Datei bleibt wie immer ohne Bedeutung).
Beispiele
Neue Makros (03.07.2026) — noch keine Beispiele aus Kundenprojekten; die folgenden Minimalbeispiele sind nach den Regeln konstruiert.
Beispiel EINFLUCHTEN_GERADE
EINFLUCHTEN_GERADE, NR = 12,
DATUM = 17.07.2026, ZEIT = 09:15:00
xx 3001,
xx 3000; { Gerade aus zwei Punkten }
xx 3057, { alle Punkte werden in die Gerade gerückt }
xx 3121,
xx 3098;
END
Beispiel EINFLUCHTEN_BOGEN
EINFLUCHTEN_BOGEN, NR = 13,
DATUM = 17.07.2026, ZEIT = 09:20:00
xx 3001,
xx 3000; R = 14.750; { Bogen aus zwei Punkten und Radius }
xx 3057, { alle Punkte werden in den Bogen gerückt }
xx 3098;
END
Die binären Codierungszeilen ergänzt VermCad automatisch; sie sind hier weggelassen.
Verfügbarkeit und Besonderheiten
- Verfügbar in allen Bundesland-Versionen ab Version 03.07.2026; in Bestandsdateien noch nicht anzutreffen.
- Unterschied zu LINIENELEMENTE/BOGENELEMENTE mit Flag
b: Das Einrücken ist beim Einfluchten unabhängig von der Datenquelle (MWT, Dialog, Import) garantiert, und die Auswertung erfolgt stets nach allen anderen Berechnungen — dadurch fluchtet man zuvor berechnete Punkte zuverlässig ein. - Sollen nur örtliche Elemente protokolliert werden (ohne Koordinatenänderung), stattdessen LINIENELEMENTE bzw. BOGENELEMENTE ohne
bverwenden.
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:1557-1558 — Schlüsselwörter
kwEinfluchtenGerade/kwEinfluchtenBogen(neu 03.07.2026) - VERMCAD\VcEditorUtils.pas:2068-2069 — Keyword-Zuordnungen
ID[kEinfluchtenGerade],ID[kEinfluchtenBogen] - VERMCAD\VCSCHMWT.PAS:5738-5740 —
R = …im 2. Satz wie Bogenelemente (EINFLUCHTEN_BOGEN); 5763-5765 — Satzzählung wie Linienelemente (EINFLUCHTEN_GERADE) - VERMCAD\VCSCHMWT.PAS:6893-6894 — implizites
cfCurveCoofür alle Elementpunkte; 2943 —,Bzulässig; 3298-3300 —,ZSnur EINFLUCHTEN_GERADE; 3658 —,ALLnicht zulässig - VERMCAD\VCDCHMWT.PAS:2644-2701 — Übernahme in
TCurveItem(inkl. Radius-Übernahme für EINFLUCHTEN_BOGEN) - VERMCAD\VCCALC.PAS:295-301, 5699-5732 —
TEinfluchtungGerade; 354-363, 6148-6181 —TEinfluchtungBogen(implizites Flag B vor der Berechnung, Auswertung nach allen anderen Berechnungen)