t

faces.render.prt.transfersimulation

TransferSingleBounce

trait TransferSingleBounce extends Transfer

An specialization of the Transfer class which indicates that transfer matrices have been calculated without the assumption that scene illumination is identical for all points in space (when no geometry is present).

Said assumption is mandatory when a set of transfer matrices models reflections. However, it is not necessary when they model occlusion only.

Dropping this assumption enables the correct simulation of point like light sources under the assumption that they are positioned outside the convex hull of the rendered geometry.

Linear Supertypes
Transfer, AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. TransferSingleBounce
  2. Transfer
  3. AnyRef
  4. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Type Members

  1. type TIncidentLight = SurfacePointProperty[DenseVector[Double]]

Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  4. def apply(light: DenseVector[Double]): SurfacePointProperty[DenseVector[Double]]

    Maps the SH-expansion of the scene's illumination to an individual, local light distribution for each vertex.

    Maps the SH-expansion of the scene's illumination to an individual, local light distribution for each vertex.

    Equivalent to transferLight.

    light

    The SH-representation of the unaffected illumination.

    Definition Classes
    Transfer
  5. def apply(triangleId: TriangleId, bcc: BarycentricCoordinates): DenseMatrix[Double]

    Returns the transfer matrix for a point on the mesh's surface.

    Returns the transfer matrix for a point on the mesh's surface.

    triangleId

    The id of the triangle that contains the point of interest.

    bcc

    The barycentric coordinates of the point of interest w.r.t. triangleId.

    returns

    The interpolated transfer matrix for the specified surface point.

    Definition Classes
    Transfer
  6. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  7. def clone(): AnyRef
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  8. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  9. def equals(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  10. def finalize(): Unit
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  11. final def getClass(): Class[_]
    Definition Classes
    AnyRef → Any
  12. def hashCode(): Int
    Definition Classes
    AnyRef → Any
  13. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  14. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  15. final def notify(): Unit
    Definition Classes
    AnyRef
  16. final def notifyAll(): Unit
    Definition Classes
    AnyRef
  17. val shBandsIn: Int
    Definition Classes
    Transfer
  18. val shBandsOut: Int
    Definition Classes
    Transfer
  19. val shComponentsIn: Int
    Definition Classes
    Transfer
  20. val shComponentsOut: Int
    Definition Classes
    Transfer
  21. val surfacePointProperty: SurfacePointProperty[DenseMatrix[Double]]
    Definition Classes
    Transfer
  22. final def synchronized[T0](arg0: ⇒ T0): T0
    Definition Classes
    AnyRef
  23. def toString(): String
    Definition Classes
    AnyRef → Any
  24. def transferLight(light: DenseVector[Double]): SurfacePointProperty[DenseVector[Double]]

    Maps the SH-expansion of the scene's illumination to an individual, local light distribution for each vertex.

    Maps the SH-expansion of the scene's illumination to an individual, local light distribution for each vertex.

    The light is assumed to be constant for each point in space (disregarding the influence of the rendered geometry), i.e. the light sources are assumed to be infinitely far away.

    In order to use point light sources that are in close proximity to the rendered geometry, please use the TransferSingleBounce class instead.

    light

    The SH-representation of the unaffected scene illumination in object space.

    Definition Classes
    Transfer
  25. def transferLocalLight(light: SurfacePointProperty[DenseVector[Double]]): TIncidentLight

    A version of the transferLight() function of the Transfer class.

    A version of the transferLight() function of the Transfer class. This method accepts individual light distributions for each vertex via a SurfacePointProperty. This enables the use of Point lights for scene illumination.

    light

    The SH-representations of unblocked scene light at the positions of all vertices.

    returns

    A SurfacePointProperty representing a local light distribution for each vertex.

  26. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  27. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  28. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Inherited from Transfer

Inherited from AnyRef

Inherited from Any

Ungrouped