aenet.geometry.transformations.TransformationChain
- class aenet.geometry.transformations.TransformationChain(transformations: list[TransformationABC])[source]
Chain multiple transformations with lazy evaluation.
This class allows sequential application of multiple transformations using itertools for memory-efficient streaming.
- Parameters:
transformations (list of TransformationABC) – List of transformations to apply sequentially
Examples
>>> chain = TransformationChain([transform1, transform2]) >>> for structure in chain.apply_transformation(input_structure): ... process(structure)
>>> # Or consume all at once >>> structures = list(chain.apply_transformation(input_structure))
- __init__(transformations: list[TransformationABC])[source]
Initialize transformation chain.
Methods
__init__(transformations)Initialize transformation chain.
apply_transformation(structure, **kwargs)Apply all transformations sequentially using depth-first streaming.