RiSunSkyObject

Both a light (sun) and a background (sky)

[ Sky | Source | Search | Keywords | Summary | Ancestors | All Members | Descendants ]

Quick Index

DESCRIPTION

Class Summary

class RiSunSkyObject : public RiLightObject, public RiBackground, public RiMedia
{
public:
// Constructors and assignment
RiSunSkyObject(RiReal lat, RiReal longi, int sm, int jd, RiReal tOfDay, RiReal turb,bool initAtmEffects , bool checkVis );
void SetNorthAndUp(const RiVector3 &n,const RiVector3 &up);
// RiLightObject
RiReal GetFormFactorSample(RiLightRegion &sample, const RiMaterialRegion &interestedSample, const RiVector2 &uv);
// RiBackground
RiSpectrum GetValue( const RiVector3 &direction ) const;
// RiMedia
RiSpectrum GetMediaEffects(const RiVector3 &origin, const RiVector3 distPnt, RiSpectrum &distantRad) const;
protected:
}; // RiSunSkyObject


DESCRIPTION


RiSunSkyObject(RiReal lat, RiReal longi, int sm, int jd, RiReal tOfDay, RiReal turb,bool initAtmEffects , bool checkVis );

Constructs an RiSunSkyObject based on
in lat
Latitude (0-360)
in long
Longitude (-90,90) south to north
in sm
Standard Meridian
in jd
Julian Day (1-365)
in tod
Time Of Day (0.0,23.99) 14.25 = 2:15PM
in turb
Turbidity (1.0,30+) 2-6 are most useful for clear days.

    RiSunSkyObject(RiReal lat, RiReal longi, int sm, int jd, RiReal tOfDay,
		   RiReal turb,bool initAtmEffects = true, bool checkVis = true);

void SetNorthAndUp(const RiVector3 &n,const RiVector3 &up);

    void SetNorthAndUp(const RiVector3 &n,const RiVector3 &up);

RiReal GetFormFactorSample(RiLightRegion &sample, const RiMaterialRegion &interestedSample, const RiVector2 &uv);

Fills in the data in sample, and returns the Form Factor weight for the sample to the interestedSample. interestedSample is used to direct the object so that it will hopefully pick a point visible to the intersted point, reducing variance. Form Factor weight is FFdi,dx / p(x) where p(x) is often the return value from GetSample The actual light arriving at interestedSample is the FFweight * the GetIrradiance() of the sample.

    virtual RiReal GetFormFactorSample(RiLightRegion &sample, const RiMaterialRegion &interestedSample, 
				       const RiVector2 &uv);

RiSpectrum GetValue( const RiVector3 &direction ) const;

Sky color in a specific direction

    virtual RiSpectrum GetValue( const RiVector3 &direction ) const;

RiSpectrum GetMediaEffects(const RiVector3 &origin, const RiVector3 distPnt, RiSpectrum &distantRad) const;

Determines the effect of the medium/media on the amount of light that makes it to receiver (origin)

    virtual RiSpectrum GetMediaEffects(const RiVector3 &origin, const RiVector3 distPnt, RiSpectrum &distantRad) const;

All Members

public:
RiSpectrum GetValue( const RiVector3 &direction ) const; // pure virtual
bool GetSample( const RiVector2 &seed, RiUnitVector3 &direction, RiReal &prob ) const;
// Members
RiReal GetFormFactorSample(RiLightRegion &sample, const RiMaterialRegion &interestedSample, const RiVector2 &uv); // pure virtual
// Members
RiSpectrum GetMediaEffects(const RiVector3 &origin, const RiVector3 distPnt, RiSpectrum &distantRad) const;
RiReal GetIndexOfRefraction() const;
static RiMedia *GetVacuum();
static RiMedia *GetWater();
static RiMedia *GetGlass(const RiSpectrum &atn);
// Constructors and assignment
void SetNorthAndUp(const RiVector3 &n,const RiVector3 &up);
protected:

Ancestors

Inheritance chain for RiSunSkyObject:


Descendants

Class is not inherited by any others.


Generated from source by the Cocoon utilities on Fri Feb 25 15:16:01 2000 .