eradiate.scenes.surface.Surface#
- class eradiate.scenes.surface.Surface(id='surface')[source]#
Bases:
CompositeSceneElement
,ABC
An abstract base class defining common facilities for all surfaces.
All scene elements deriving from this interface are composite and cannot be turned into a kernel scene instance on their own: they must be owned by a container which take care of expanding them.
- Parameters:
id (
str
, optional, default:"surface"
) – Identifier of the current scene element.- Fields:
Notes
This class is to be used as a mixin.
- traverse(callback)#
Traverse this scene element and collect kernel dictionary template and parameter update map contributions.
- Parameters:
callback (
SceneTraversal
) – Callback data structure storing the collected data.
- update()#
Enforce internal state consistency. This method should be called when fields are modified. It is automatically called as a post-init step.
- property objects#
Map of child objects associated with this scene element.
- Returns:
dict
– A dictionary mapping object names to a corresponding object to be inserted in the Eradiate scene graph.
- property params#
- Returns:
dict[str
,UpdateParameter
] orNone
– A dictionary mapping parameter paths, consisting of dot-separated strings, to a corresponding update protocol.
See also
- property template#
Kernel dictionary template contents associated with this scene element.
- Returns:
dict
– A flat dictionary mapping dot-separated strings describing the path of an item in the nested scene dictionary to values. Values may be objects which can be directly used by themitsuba.load_dict()
function, orInitParameter
instances which must be rendered.
See also