ReducePointsInString

Top  Previous  Next

Reduzieren von Punkten in Linien durch löschen von Zwischenpunkten. Derzeit werden alle Strings der Selektionsmenge bearbeitet.

Funktionsweise: Zwischenpunkte in Geraden werden nach dem Lotverfahren ermittelt. Lässt sich von dem Testpunkt das Lot auf die durch die benachbarten Knickpunkte definierte Strecke fällen und bleibt die Lotlänge innerhalb einer vorgegebenen Toleranz, ist dieser Punkt ein „Geradenzwischenpunkt“. Der Geradheitstest kann optional noch um einen Winkeltest erweitert werden. Nachfolgend bezeichnet Pt den Testpunkt, „Pvor“ seinen Vorgänger und „Pnach“ seinen Nachfolgerpunkt im String. Differieren die Richtungswinkel der Strecken Pvor, Pt und Pt, Pnach zu stark, so ist Pt kein Geradenzwischenpunkt. Punkte mit LINK_R- oder LINK_P-Verbindung gelten grundsätzlich nicht als „Geradenzwischenpunkte“. In der Default-Einstellung sind auch Knotenpunkte, d.h. Punkte, auf denen Symbole liegen oder die lagemäßig identisch in anderen Strings vorkommen, keine „Geradenzwischenpunkte“. Der Geradheitstest analysiert 3 benachbarte Punkte, eine aufeinanderfolgende Sequenz von Geradenzwischenpunkten könnte dennoch eine Kurve bilden. In diesem Fall werden geeignete Geradenzwischenpunkte als Knickpunkte bewertet.

 

 

Parameter

Tolerance/<n.n>

Maximal zulässige Lotlänge in Metern. Defaultwert: 10cm / 0.1m

Maxdiffangle/<n.n>         (optional)

Maximal zulässige Differenz der Richtungswinkel.

Durch Voranstellen eines

Buchstaben läßt sich das Winkelmass bestimmen:

          D Grad

          R Radiant (Bogenmaß)

          G Neugrad

          Ohne Vorgestelltes Masskürzel ist die Einheit Radiant.

/WORKKNOTS                (optional)

Auch Knotenpunkte sind potentielle Geradenzwischenpunkte.

/PLINKEDIT                     (optional)

LINK_P-Verbindungen werden durch LINK_L-Verbindungen ersetzt.

/RLINKEDIT                     (optional)

LINK_R-Verbindungen werden durch LINK-L-Verbindungen ersetzt.

/VIEW_ONLY                   (optional)

Bei Angabe dieses Schalters wird kein Datenupdate durchgeführt. Stattdessen werden Knickpunkte durch blaue, Geradenzwischenpunkte durch rote Displaymarker dargestellt.

Rückgabewert

Wert

Beschreibung

0

Aufruf wurde erfolgreich durchgeführt

Sonst

Fehler aufgetreten

 

 

 

 

Beispiel

ReducePointsInString Tolerance/0.3 Maxdiffangle/D10.0 /view_only

Hier werden Geradenzwischenpunkte mit einem zulässigen Abstand zur Geraden von 0.3 Metern und einem zulässigen Knickwinkel von 10 Altgrad ermittelt. Das Ergebnis wird nur angezeigt.