integrate()#

Discrete3DMeshRayTransferIntegrator.integrate(spectrum, world, ray, primitive, material, start_point, end_point, world_to_primitive, primitive_to_world)#

Performs a customised integration of the emission through a volume emitter.

This is a virtual method and must be implemented in a sub class.

Parameters:
  • spectrum (Spectrum) – Spectrum measured so far along ray path. Add your emission to this spectrum, don’t override it.

  • world (World) – The world scene-graph.

  • ray (Ray) – The ray being traced.

  • primitive (Primitive) – The geometric primitive to which this material belongs (i.e. a cylinder or a mesh).

  • material (InhomogeneousVolumeEmitter) – The material whose emission needs to be integrated.

  • start_point (Point3D) – The start point for integration in world space.

  • end_point (Point3D) – The end point for integration in world space.

  • world_to_primitive (AffineMatrix3D) – Affine matrix defining the coordinate transform from world space to the primitive’s local space.

  • primitive_to_world (AffineMatrix3D) – Affine matrix defining the coordinate transform from the primitive’s local space to world space.