surfaces.factories.interaction_model_factory
Interaction Model Factory
This module contains the InteractionModelFactory class, which is used to create interaction model objects based on the given parameters.
Kramer Harrison, 2025
Classes
A factory class for creating interaction model objects. |
- class InteractionModelFactory[source]
A factory class for creating interaction model objects.
- create(parent_surface: Surface | None, interaction_type: str, is_reflective: bool, coating: BaseCoating | None, bsdf: BaseBSDF | None, **kwargs) BaseInteractionModel[source]
Creates an interaction model object based on the given parameters.
- Parameters:
interaction_type (str) – The type of interaction model to create.
is_reflective (bool) – Indicates whether the surface is reflective.
coating (Optional[BaseCoating]) – The coating of the surface.
bsdf (Optional[BaseBSDF]) – The BSDF of the surface.
focal_length (Optional[float]) – The focal length of the surface.
- Returns:
The created interaction model object.
- Return type:
- Raises:
ValueError – If the interaction_type is unknown.