MWT Syntax-Makro WINKEL: Unterschied zwischen den Versionen
Erscheinungsbild
Claude (Diskussion | Beiträge) Alt-Klassik-Doku eingemischt: Mehrwert/Grafiken/Siehe-auch (Task MWT_Syntax) |
Claude (Diskussion | Beiträge) Sachkorrektur nach dem Code: Winkel für alle Paare von Zielpunkten, nicht nur aufeinanderfolgende; Drehsinn und Einheiten |
||
| Zeile 28: | Zeile 28: | ||
== Datenzeilen == | == Datenzeilen == | ||
* Es werden reine Punktangaben ohne Messwerte gelesen; berechnet | * Es werden reine Punktangaben ohne Messwerte gelesen; berechnet wird am Scheitel der Winkel für '''jedes Paar''' von Zielpunkten (der erste mit jedem folgenden, dann der zweite mit jedem folgenden usw.; bei vier Zielpunkten sechs Winkel). Gemessen wird im Uhrzeigersinn von der Richtung zum ersten zur Richtung zum zweiten Punkt des Paares (0 bis 400 gon); die Ergebnisliste gibt jeden Winkel in Gon, Grad und Rad aus. | ||
* Die Reihenfolge der Zielpunkte bestimmt die Reihenfolge der ausgegebenen Winkel. | * Die Reihenfolge der Zielpunkte bestimmt die Reihenfolge der ausgegebenen Winkel. | ||
| Zeile 62: | Zeile 62: | ||
* VERMCAD\VCSCHMWT.PAS:6639 — Satz 1: genau ein Punkt, Semikolon-Pflicht | * VERMCAD\VCSCHMWT.PAS:6639 — Satz 1: genau ein Punkt, Semikolon-Pflicht | ||
* VERMCAD\VCDCHMWT.PAS:2897-2902 — Satzzuordnung: 1 = Scheitel, ab 2 = Zielpunkte (<code>InsertItems</code>) | * VERMCAD\VCDCHMWT.PAS:2897-2902 — Satzzuordnung: 1 = Scheitel, ab 2 = Zielpunkte (<code>InsertItems</code>) | ||
* VERMCAD\VCCALC.PAS: | * VERMCAD\VCCALC.PAS:669-696 — <code>TPolarItem</code>/<code>TWinkelItem</code> (Scheitel + Items); 9766-9840 <code>TWinkelItem.ResultList</code>: alle Paare <code>I < J</code> (9835), Winkel über <code>SchnittWinkel</code> mit <code>cAnyAngle</code> (ANALYTIC.PAS:790-796) | ||
{{Hilfe:NachOben}} | {{Hilfe:NachOben}} | ||
[[Kategorie:Blöcke mit Anweisungen (Makros)|WINKEL]] | [[Kategorie:Blöcke mit Anweisungen (Makros)|WINKEL]] | ||
Version vom 16. September 2026, 13:41 Uhr
Das Rechenmakro WINKEL berechnet Winkel zwischen koordinatenmäßig bekannten Punkten: Vom Scheitelpunkt aus werden die Richtungen zu allen Zielpunkten gerechnet und alle Winkel zwischen je zwei Zielpunkten ausgegeben.
Syntaxregel
WINKEL [, KOORDINATENSYSTEM <n> | , LS <n>] [, <Kopf-Parameter>]*
<NV> <NR> ; (Satz 1: Scheitelpunkt, genau 1 Punkt)
{ <NV> <NR> { , <NV> <NR> }* ; }+ (ab Satz 2: Zielpunkte)
END
| Regelelement | Bedeutung |
|---|---|
| Satz 1 | Punktangabe des Scheitelpunktes; genau ein Punkt, Abschluss mit ;.
|
| Zielpunkt-Sätze | Punktangaben (NV NR) der Zielpunkte; je Satz ein oder mehrere Punkte, kommagetrennt. Alle Punkte müssen koordinatenmäßig bekannt sein. |
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/Lagestatus | alle |
Datenzeilen
- Es werden reine Punktangaben ohne Messwerte gelesen; berechnet wird am Scheitel der Winkel für jedes Paar von Zielpunkten (der erste mit jedem folgenden, dann der zweite mit jedem folgenden usw.; bei vier Zielpunkten sechs Winkel). Gemessen wird im Uhrzeigersinn von der Richtung zum ersten zur Richtung zum zweiten Punkt des Paares (0 bis 400 gon); die Ergebnisliste gibt jeden Winkel in Gon, Grad und Rad aus.
- Die Reihenfolge der Zielpunkte bestimmt die Reihenfolge der ausgegebenen Winkel.
Beispiele
Beispiel (allgemein, echt aus Testprojekt)
WINKEL, NR = 36,
DATUM = 27.02.2006,
ZEIT = 16:27:26,
PNR = 777
xx 2359; { Scheitelpunkt }
xx 2363; { Zielpunkte }
xx 2361;
END
Die binären Codierungszeilen ergänzt VermCad automatisch.
Verfügbarkeit und Besonderheiten
- Verfügbar in allen Bundesland-Versionen; in echten Kundenprojekten selten (überwiegend in Test-/Schulungsdateien beobachtet).
- Sollen zusätzlich Strecken ausgegeben oder eine gemessene Anschlussstrecke geprüft werden, ist POLARELEMENTE das passende Makro (gleiche Grundstruktur Scheitel + Zielpunkte).
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\VcEditorUtils.pas:2083 — Keyword-Zuordnung
ID[kWinkel] := kwWinkel - VERMCAD\VCSCHMWT.PAS:6639 — Satz 1: genau ein Punkt, Semikolon-Pflicht
- VERMCAD\VCDCHMWT.PAS:2897-2902 — Satzzuordnung: 1 = Scheitel, ab 2 = Zielpunkte (
InsertItems) - VERMCAD\VCCALC.PAS:669-696 —
TPolarItem/TWinkelItem(Scheitel + Items); 9766-9840TWinkelItem.ResultList: alle PaareI < J(9835), Winkel überSchnittWinkelmitcAnyAngle(ANALYTIC.PAS:790-796)