Rogue Wave Views
Foundation Package API Reference Guide
Product Documentation:

Rogue Wave Views
Documentation Home
List of all members | Public Member Functions
IlvDistantLight Class Reference

Distant Light. More...

#include <ilviews/bitmaps/filters/lights.h>

Inheritance diagram for IlvDistantLight:
IlvLightSource IlvValueInterface

Public Member Functions

 IlvDistantLight (IlFloat azimuth=0.0, IlFloat elevation=0.0, IlFloat r=1.0, IlFloat g=1.0, IlFloat b=1.0)
 Constructor. More...
 
IlFloat getAzimuth () const
 Returns the azimuth. More...
 
IlFloat getElevation () const
 Returns the elevation. More...
 
void getLightVector (IlFloat x, IlFloat y, IlFloat z, IlFloat *result)
 Returns the vector from this instance to a given point in 3D space. More...
 
void setAzimuth (IlFloat azimuth)
 Sets the azimuth. More...
 
void setElevation (IlFloat elevation)
 Sets the elevation. More...
 
void update ()
 Called when the instance needs internal updating.
 
- Public Member Functions inherited from IlvLightSource
 IlvLightSource (IlFloat r=1.0, IlFloat g=1.0, IlFloat b=1.0)
 Constructor. More...
 
virtual ~IlvLightSource ()
 Destructor. More...
 
IlFloat getB () const
 Returns the blue component value. More...
 
IlFloat getG () const
 Returns the green component value. More...
 
IlFloat getR () const
 Returns the red component value. More...
 
void setB (IlFloat b)
 Sets the blue component value. More...
 
void setG (IlFloat g)
 Sets the green component value. More...
 
void setR (IlFloat r)
 Sets the red component value. More...
 
- Public Member Functions inherited from IlvValueInterface
virtual IlBoolean applyValue (const IlvValue &value)
 Apply an accessor. More...
 
virtual IlBoolean changeValue (const IlvValue &val)
 Changes the value of an accessor. More...
 
virtual IlBoolean changeValues (const IlvValue *values, IlUShort count=0)
 Changes several accessor values simultaneously. More...
 
virtual void getAccessors (const IlSymbol *const **names, const IlvValueTypeClass *const **types, IlUInt &count) const
 Retrieves the list of available accessors of an object. More...
 
virtual const char * getName () const
 Returns the name of the instance. The semantic and implementation of this method are defined by concrete subclasses. The default implementation returns 0. More...
 
virtual IlvValuequeryValue (IlvValue &val) const
 Retrieves an accessor value. More...
 
virtual void queryValues (IlvValue *values, IlUShort count) const
 Retrieves multiple accessor values simultaneously. More...
 

Detailed Description

Distant Light.

Library: ilvbmpflt

This class allows you to model an infinitely distant light using an elevation and an azimuth.

See also
IlvDiffuseLightingFilter, IlvSpecularLightingFilter, IlvLightSource, IlvPointLight, IlvSpotLight

Constructor & Destructor Documentation

§ IlvDistantLight()

IlvDistantLight::IlvDistantLight ( IlFloat  azimuth = 0.0,
IlFloat  elevation = 0.0,
IlFloat  r = 1.0,
IlFloat  g = 1.0,
IlFloat  b = 1.0 
)

Constructor.

Initializes a new instance of the class IlvDistantLight.

The default azimuth and elevation are 0.0. The default light color is white.

Member Function Documentation

§ getAzimuth()

IlFloat IlvDistantLight::getAzimuth ( ) const

Returns the azimuth.

Returns
The azimuth.

§ getElevation()

IlFloat IlvDistantLight::getElevation ( ) const

Returns the elevation.

Returns
The elevation.

§ getLightVector()

void IlvDistantLight::getLightVector ( IlFloat  x,
IlFloat  y,
IlFloat  z,
IlFloat result 
)
virtual

Returns the vector from this instance to a given point in 3D space.

Parameters
xThe x position of the point.
yThe y position of the point.
zThe z position of the point.
resultAn array of 3 floating point values that will hold the vector.

Reimplemented from IlvLightSource.

§ setAzimuth()

void IlvDistantLight::setAzimuth ( IlFloat  azimuth)

Sets the azimuth.

Parameters
azimuthThe new azimuth.

§ setElevation()

void IlvDistantLight::setElevation ( IlFloat  elevation)

Sets the elevation.

Parameters
elevationThe new elevation.

© Copyright 2017, Rogue Wave Software, Inc. All Rights Reserved.
Rogue Wave is a registered trademark of Rogue Wave Software, Inc. in the United States and other countries. All other trademarks are the property of their respective owners.