RiSunSky


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

Quick Index

DESCRIPTION

Class Summary

class RiSunSky
{
public:
// Constructors and assignment
RiSunSky(RiReal lat, RiReal longi, int sm, int jd, RiReal tod, RiReal turb,bool initAtmEffects );
// Members
RiVector3 GetSunPosition() const;
void SunThetaPhi(RiReal &theta, RiReal &phi) const;
RiSpectrum GetSunSpectralRadiance() const;
RiReal GetSunSolidAngle() const;
RiSpectrum GetSkySpectralRadiance(const RiVector3 &v) const;
RiSpectrum GetSkySpectralRadiance(RiReal theta, RiReal phi) const;
void GetAtmosphericEffects(const RiVector3 &viewer, const RiVector3 &source, RiSpectrum &atmAttenuation, RiSpectrum &atmInscatter ) const;
protected:
}; // RiSunSky


DESCRIPTION


RiSunSky(RiReal lat, RiReal longi, int sm, int jd, RiReal tod, RiReal turb,bool initAtmEffects );

Constructs an RiSunSky 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.
in initAtmEffects
if atm effects are not initialized, bad things will happen if you try to use them....

    RiSunSky(RiReal lat, RiReal longi, int sm, int jd, RiReal tod, RiReal turb,bool initAtmEffects = true);

RiVector3 GetSunPosition() const;

Position (actual Direction) of the sun South = +x, East = +y, up = +z

    RiVector3  	GetSunPosition() const;

void SunThetaPhi(RiReal &theta, RiReal &phi) const;

out theta
Sun angle down? from straight above
out phi
Sun angle around from South?

    void 	SunThetaPhi(RiReal &theta, RiReal &phi) const;  

RiSpectrum GetSunSpectralRadiance() const;

Spectral radiance making it to the earth's surface

    RiSpectrum 	GetSunSpectralRadiance() const;

RiReal GetSunSolidAngle() const;

Solid angle of the sun (constant

    RiReal	GetSunSolidAngle() const;

RiSpectrum GetSkySpectralRadiance(const RiVector3 &v) const;

Spectral radiance of the sky in the specified direction

    RiSpectrum  GetSkySpectralRadiance(const RiVector3 &v) const;

RiSpectrum GetSkySpectralRadiance(RiReal theta, RiReal phi) const;

An alternate way of getting the sky's spectral radiance

    RiSpectrum  GetSkySpectralRadiance(RiReal theta, RiReal phi) const;

void GetAtmosphericEffects(const RiVector3 &viewer, const RiVector3 &source, RiSpectrum &atmAttenuation, RiSpectrum &atmInscatter ) const;

Compute Atmospheric Perspective based on
in viewer
Position of the viewer
in source
Position of the distant point
out atmAttenuation
Attenuation due to atmosphere
out atmInscatter
Amount of light scattered into the viewing direction

    void GetAtmosphericEffects(const RiVector3 &viewer,
			       const RiVector3 &source,
			       RiSpectrum &atmAttenuation,
			       RiSpectrum &atmInscatter ) const;

All Members

public:
// Members
RiVector3 GetSunPosition() const;
void SunThetaPhi(RiReal &theta, RiReal &phi) const;
RiSpectrum GetSunSpectralRadiance() const;
RiReal GetSunSolidAngle() const;
RiSpectrum GetSkySpectralRadiance(const RiVector3 &v) const;
RiSpectrum GetSkySpectralRadiance(RiReal theta, RiReal phi) const;
void GetAtmosphericEffects(const RiVector3 &viewer, const RiVector3 &source, RiSpectrum &atmAttenuation, RiSpectrum &atmInscatter ) const;
protected:

Ancestors

Class does not inherit from any other class.


Descendants

Class is not inherited by any others.


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