Complex
Módulo: digi21.base
Un elemento complejo que agrupa otras geometrías como hijas. Hereda de
Geometry. Se comporta como una secuencia de sus geometrías hijas: admite
len(), indexación y recorrido.
Complex(codes=())
| Argumento |
Tipo |
Descripción |
codes |
iterable |
Códigos (FeatureCode o str). |
Propiedades
| Propiedad |
Tipo |
Descripción |
closed |
bool |
Indica si el complejo está cerrado. |
geometries |
list[Geometry] |
Lista de geometrías hijas. |
Métodos
| Método |
Devuelve |
Descripción |
add(geometry) |
— |
Añade una geometría. La propiedad pasa al complejo. |
insert(position, geometry) |
— |
Inserta una geometría en la posición indicada. |
remove(geometry) |
bool |
Elimina la geometría indicada; devuelve True si se eliminó. |
clear() |
— |
Elimina todas las geometrías. |
explode() |
list |
Devuelve clones independientes de las geometrías que lo componen. |
Acceso a las geometrías hijas
| Operación |
Descripción |
len(complex) |
Número de geometrías hijas. |
complex[i] |
Geometría hija en la posición i. |
for g in complex: |
Recorre las geometrías hijas. |
Ejemplo
from digi21.base import Complex, Line, Point
bloque = Complex(["BLOQUE"])
bloque.add(Line(["MURO"], [(0, 0, 0), (10, 0, 0)]))
bloque.add(Point((5, 5, 0), codes=["POSTE"]))
for hija in bloque:
print(type(hija).__name__)
Propiedad de la memoria: al añadir una geometría con add/insert, la propiedad
pasa al complejo. explode() devuelve clones independientes.
Véase también