Module rgg
Package de.grogra.rgg

Class LightModelBase

All Implemented Interfaces:
Manageable, Shareable
Direct Known Subclasses:
FluxLightModel, LightModel

public abstract class LightModelBase extends ShareableBase
  • Field Details

  • Constructor Details

    • LightModelBase

      public LightModelBase()
  • Method Details

    • compute

      public abstract void compute()
      (Re-)computes the light distribution in the current graph.
    • compute

      public abstract void compute(Spectrum spectrumFactory)
      (Re-)computes the light distribution in the current graph.
      Parameters:
      spectrumFactory - factrory for spectrum objects
    • compute

      public abstract void compute(boolean force)
      (Re-)computes the light distribution in the current graph.
      Parameters:
      force - if true forces recomputation of the light distribution
    • compute

      public abstract void compute(Spectrum spectrumFactory, boolean force)
      (Re-)computes the light distribution in the current graph. This method has to be invoked at first in order for getRadiantPowerFor(de.grogra.graph.impl.Node), getAbsorbedPower(de.grogra.graph.impl.Node) and getSensedIrradiance(de.grogra.graph.impl.Node) to return correct values.
      Parameters:
      spectrumFactory - factrory for spectrum objects
      force - if true forces recomputation of the light distribution
    • getRadiantPowerFor

      @Deprecated public Spectrum getRadiantPowerFor(Node node)
      Deprecated.
      Deprecated, use getAbsorbedPower(node) instead.
      Parameters:
      node -
      Returns:
    • getRadiantPower3dFor

      @Deprecated public Spectrum3d getRadiantPower3dFor(Node node)
      Deprecated.
      Deprecated, use getAbsorbedPower3d(node) instead.
      Parameters:
      node -
      Returns:
    • getAbsorbedPower

      public abstract Spectrum getAbsorbedPower(Node node)
      Returns the radiant power in Watts which is absorbed by the surface of the volume of the given node. If the node does not define a volume, the zero spectrum is returned.
      Parameters:
      node - a node of the graph
      Returns:
      the absorbed radiant power of the node
    • getAbsorbedPower3d

      public Spectrum3d getAbsorbedPower3d(Node node)
      Returns the radiant power in Watts which is absorbed by the surface of the volume of the given node, represented as a Spectrum3d. If the node does not define a volume, the zero spectrum is returned.
      Parameters:
      node - a node of the graph
      Returns:
      the absorbed radiant power of the node
    • getSensedIrradiance

      public abstract Spectrum getSensedIrradiance(Node node)
      Returns the irradiance in Watts per square meter which is sensed by the sensor attached to the volume of the given node. If the node does not define a volume with a sensor, the zero spectrum is returned.
      Parameters:
      node - a node of the graph
      Returns:
      the sensed irradiance of the node
    • getSensedIrradiance3d

      public Spectrum3d getSensedIrradiance3d(Node node)
    • setLayerVisible

      public abstract void setLayerVisible(int layer, boolean visible)
      sets the visibility of a layer