KLEINPUNKTE
Das Rechenmakro KLEINPUNKTE berechnet aus örtlichen kartesischen Koordinaten, die bezüglich einer Messungslinie gegeben sind (Linienverfahren/Orthogonalverfahren), Koordinaten im übergeordneten System. Die Neupunkte erhalten Bedingungskoordinaten.
Syntaxregel
KLEINPUNKTE [, KOORDINATENSYSTEM <n> | , LS <n>] [, <Kopf-Parameter>]*
<NV> [<A>] <NR> [<MassX>|x [<MassY>]] {, <NV> [<A>] <NR> [<MassX>|x [<MassY>]]}+ ; (Satz 1: Linie, 2+ Punkte)
{ <PBS-Neupunkt> <Abszisse> <Ordinate> ; }* (Neupunkte)
END
| Regelelement | Bedeutung |
|---|---|
| Satz 1 | Definition der Linie nach Bogen- und Liniendefinition: mindestens zwei Punkte. <MassX> = Anlege-/Endmaß (Station), x = Fehlwert; <MassY> = wahlweises seitliches Maß. Sind Anlege- und Endmaß bekannt, wird das Verhältnis aus gemessener und gerechneter Strecke als Maßstab berücksichtigt, andernfalls Maßstab 1.
|
<PBS-Neupunkt> |
vollständige Punktidentifikation (NV A NR VMA Flags) des Neupunkts; üblich Flag B (Bedingungskoordinate).
|
<Abszisse> <Ordinate> |
örtliche Koordinaten auf der Linie. Achtung: entgegen der üblichen Reihenfolge steht zuerst der Hochwert (Abszisse, entlang der Linie), dann der Rechtswert (Ordinate, quer zur Linie). |
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 |
| Z | , Z |
nein | Kleinpunkte mit Höhen (3D): Z wird entlang der Raumgeraden aus der Abszisse interpoliert; die Ordinate darf dann entfallen | alle |
| ZS | , ZS = <w> |
nein | zulässige Spannmaßabweichung (gemessene gegen gerechnete Linienlänge) | alle |
| ZP | , ZP = <w> |
nein | zulässige Punktabweichung | alle |
| M | , M = <w> |
nein | Multiplikationsfaktor für alle Abszissen/Ordinaten des Blocks (auch reziprok M = 1/0.9987) |
alle |
| NETZ | , NETZ |
nein | berechnete Punkte dem Netz als Anschlusspunkte bereitstellen | alle |
Datenzeilen
- Ab dem zweiten Datensatz folgen ausschließlich Neupunkte (KLEINPUNKTE kennt keine Elementpunkt-Sätze wie LINIENELEMENTE).
- Jeder Neupunkt-Satz: volle Punktbeschreibung, dann Abszisse und Ordinate; Abschluss mit
;. Mehrere Neupunkte dürfen — durch Zeilenumbruch getrennt — in einem Satz stehen (Trennung mit;üblich). - Negative Ordinaten = links der Linie (in Linienrichtung vom ersten zum zweiten Punkt gesehen).
Beispiele
Beispiel (allgemein, aus der Alt-Dokumentation)
KLEINPUNKTE, NR = 2
xx 3001 1.41,
xx 3000 32.75; { Anlege- und Endmaß kann auch entfallen }
xx 2 3091 x 4.12 1.03 { PID Flags Abszisse Ordinate }
xx x 3092 f 12.37 -0.86;
END
Beispiel (Sachsen, echt)
Linie mit Anlegemaß 0.0 am ersten Punkt, Fehlwert x und seitlichem Maß 0.0 am zweiten Punkt; Neupunkte mit Flags BF:
KLEINPUNKTE, NR = 2, DEA, DATUM = 10.03.2006, ZEIT = 10:12 04 733 0.000 0.000, 04 734 x 0.000; 04 2 1241 000 BF 0.000 5.000; 04 2 1242 000 BF 20.366 5.000; 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 v. a. Sachsen, Thüringen, Anhalt.
- Sollen auf derselben Linie zusätzlich Bestandspunkte kontrolliert oder eingerückt werden, ist MESSLINIE die Kombination aus LINIENELEMENTE und KLEINPUNKTE.
- Für örtliche Koordinaten bezüglich eines Kreisbogens: BOGENPUNKTE.
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:2072 — Keyword-Zuordnung
ID[kKleinPunkt] := kwKleinPunkte - VERMCAD\VCSCHMWT.PAS:6202-6206 — ab Satz 2 folgen Punktdefinitionen (Neupunkte)
- VERMCAD\VCSCHMWT.PAS:6235-6241 — Wertlesung je Neupunkt: erst
dk_X(Abszisse), danndk_Y(Ordinate); mit,Zdarf die Ordinate entfallen - VERMCAD\VCSCHMWT.PAS:3350-3354 — Kopf-Option
,Z; 3522-3528 —,M; 3297-3322 —,ZS - VERMCAD\VCDCHMWT.PAS:2644-2701 — Übernahme in
TCurveItem(Satz 1 = InsertCurve mit Maßen, Folgesätze = InsertPunkt) - VERMCAD\VCCALC.PAS:303-308 —
TKleinPunkt; 3604 ff. —Calc3DKleinPunkte(Höheninterpolation entlang der Raumgeraden)