eradiate.scenes.bsdfs.MaignanBSDF

class eradiate.scenes.bsdfs.MaignanBSDF(id=None, C=5.0, ndvi=0.8, refr_re=1.5, refr_im=0.0, ext_ior=1.000277)[source]

Bases: BSDF

Maignan polarized BSDF [maignan].

This plugin implements the reflection model proposed by [Maignan et al., 2009]. The model is based on fits to POLDER observations and combines a BRDF with the Fresnel reflectance matrix (see Eq. 21 in [Maignan et al., 2009]).

Parameters:
  • id (str, optional) – Identifier of the current scene element.

  • C (Spectrum or dict or float, optional, default: 5.0) – Scaling parameter (C) of the Maignan BPDF model. Must be positive (typically in [4, 8].)

  • ndvi (Spectrum or dict or float, optional, default: 1.0) – NDVI parameter (ν) of the Maignan BPDF model. Must be in \([0, 1]\).)

  • refr_re (Spectrum or dict or float, optional, default: 1.5) – Real part of the surface’s refractive index. Must be positive.)

  • refr_im (Spectrum or dict or float, optional, default: 0.0) – Imaginary part of the surface’s refractive index. Must be positive.)

  • ext_ior (Spectrum or dict or float, optional, default: 1.000277) – Exterior index of refraction. The imaginary part is assumed to be 0.

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

  • C (Spectrum) – Scaling parameter (C) of the Maignan BPDF model.

  • ndvi (Spectrum) – NDVI parameter (ν) of the Maignan BPDF model.

  • refr_re (Spectrum) – Real part of the surface’s refractive index.

  • refr_im (Spectrum) – Imaginary part of the surface’s refractive index.

  • ext_ior (Spectrum) – Exterior index of refraction.

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.