Sie können LineJoiner
Transformator mit Parameter verwenden List Name
. Sie müssen jedoch einige zusätzliche Datenverarbeitungen durchführen:
- Verwenden Sie
LengthCalculator
diese Option , um Längen zu berechnen.
- Verwenden
Sorter
Sie diese Option , um Ihre Zeilen nach Länge zu sortieren (numerische Sortierung, absteigend).
- Verwenden Sie
LineJoiner
diese Option , um Linien zu verbinden. Die größten zuerst (dank Schritt 2). Geben Sie den Parameter List Name
des LineJoiner
Namens für ein neues Listenattribut an.
- Mit
ListIndexer
Listenindex 0 verwenden - um die Attribute der ersten verbundenen Funktion (die größte) aus der Liste abzurufen.
So wird es aussehen:
EDIT1:
Um nur <1m Features mit größeren Features verbinden zu können, müssen wir zusätzlich Folgendes verwenden:
Tester
Transformator nach LengthCalculator mit Test: _length < 1
- Verwenden Sie
SpatialFilter
(Tests, um Parameter durchzuführen :) TOUCHES
nach dem Tester, um nur die Merkmale zu filtern, die Merkmale <1 m berühren. Führen Sie dann eine Linienverbindung mit <1 m Merkmalen durch. Funktionen, die <1 m nicht berühren, direkt zur Ausgabe (oder zur weiteren Verarbeitung).
Modell:
EDIT2:
Wenn Sie eine Linie von <1 m haben, die zwei große berührt, werden alle miteinander verbunden. Wenn ein solcher Fall (<1 m Funktion berührt zwei oder mehr große) in Ihren Daten möglich ist, sollten Sie eine Verarbeitung solcher Fälle hinzufügen. Schauen Sie sich die Parameter Merge Attributes
und den Attribute Prefix
Transformator an SpatialFilter
. Mit diesen Parametern sollten Sie in der Lage sein, solche Fälle zu erkennen und dann zusätzliche Filterungen durchzuführen.
EDIT3:
Lassen Sie uns den Fall lösen, wenn zwei große Linien eine kleine (<1 m) berühren. Wir müssen nur eine der großen Linien nehmen, um an der Verbindung mit der kleinen teilzunehmen.
Um eine solche Filterung durchführen zu können, müssen wir diese beiden großen Merkmale mit einer ID von der kleinen kennzeichnen, die sie berühren. Wie in EDIT2 angegeben, kann dies im SpatialFilter
Transformator unter Verwendung der Parameter Merge Attributes
und erfolgen Attribute Prefix
.
Verwenden Sie dann den Transformator DuplicateRemover
, um solche doppelten Merkmale (zwei große) zu filtern, und nehmen Sie nur eines davon.
Tipp: Versuchen Sie, Inspector
beim Erstellen Ihres Modells einen Transformator zu verwenden , und zeigen Sie Zwischenergebnisse an, die Ihnen nicht klar sind. Auf diese Weise verstehen Sie besser, wie die einzelnen Transformatoren funktionieren. Experimentieren Sie mit Ihren Daten! :) :)