Puede usar LineJoiner
transformador con parámetro List Name
. Pero necesita hacer un procesamiento de datos adicional:
- Use
LengthCalculator
para calcular longitudes.
- Use
Sorter
para ordenar sus líneas por longitud (ordenación numérica, descendente).
- Use
LineJoiner
para unir líneas. Los más grandes primero (gracias al paso 2). Especifique el parámetro List Name
de LineJoiner
- algún nombre para el nuevo atributo de lista.
- Use
ListIndexer
con el índice de lista 0: para obtener los atributos de la primera característica unida (la más grande) de la lista.
Así es como se verá:
EDITAR1:
Para poder unir solo <1m características a las más grandes, necesitamos adicionalmente usar:
Tester
transformador después de LengthCalculator con prueba: _length < 1
- Use
SpatialFilter
(pruebas para realizar el parámetro TOUCHES
:) después de Probador para filtrar solo las funciones que tocan funciones <1m. Luego realice la unión de línea en ellos junto con <1m de características. Funciones que no tocan <1 m, directo a la salida (o procesamiento adicional).
Modelo:
EDIT2:
Si tiene una línea <1m que toca dos grandes, entonces todas se unirán. Si tal caso (<1m la función toca dos o más grandes) es posible en sus datos, entonces debe agregar algún procesamiento de tales casos. Echa un vistazo a los parámetros Merge Attributes
y Attribute Prefix
del transformador SpatialFilter
. Al usar estos parámetros, debería poder detectar tales casos y luego hacer un filtrado adicional.
EDITAR3:
Resolvamos el caso cuando tenga dos líneas grandes tocando una pequeña (<1m). Necesitamos tomar solo una de las grandes líneas para participar en la unión con la pequeña.
Para poder realizar dicho filtrado, debemos marcar estas dos características grandes con alguna identificación de la pequeña que están tocando. Como se indica en EDIT2, se puede hacer en SpatialFilter
transformador utilizando parámetros Merge Attributes
y Attribute Prefix
.
Luego use el transformador DuplicateRemover
para filtrar tales características duplicadas (dos grandes) y tome solo una de ellas.
Sugerencia: intente utilizar el Inspector
transformador durante la creación de su modelo y vea resultados intermedios en cualquier caso que no le resulte claro. De esta manera, comprenderá mejor cómo funciona cada uno de los transformadores. ¡Experimenta con tus datos! :)