eradiate.scenes.phase.IsotropicPhaseFunction

class eradiate.scenes.phase.IsotropicPhaseFunction(id='phase')[source]

Bases: PhaseFunction

Isotropic phase function [isotropic].

The isotropic phase function models scattering with equal probability in all directions.

Parameters:

id (str, optional, default: "phase") – Identifier of the current scene element.

Fields:

id (str or None) – Identifier of the current scene element.

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, SceneParameter] or None – A dictionary mapping parameter paths, consisting of dot-separated strings, to a corresponding update protocol.

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 the mitsuba.load_dict() function, or DictParameter instances which must be rendered.