V-ART
Public Member Functions | List of all members
VART::SpotLight Class Reference

Spot Light representation. More...

#include <spotlight.h>

Inheritance diagram for VART::SpotLight:
VART::Light VART::SceneNode VART::MemoryObj

Public Member Functions

 SpotLight (Point4D a, float bw, float coa, Point4D l, Point4D d, float r)
 
void SetAttenuation (Point4D a)
 
Point4D GetAttenuation (void)
 
void SetBeamWidth (float bw)
 
float GetBeamWidth (void)
 
void SetCutOffAngle (float coa)
 
float GetCutOffAngle (void)
 
void SetDirection (Point4D d)
 
Point4D GetDirection (void)
 
void SetRadius (float r)
 
float GetRadius (void)
 
- Public Member Functions inherited from VART::Light
 Light ()
 
 Light (const Light &light)
 
 Light (float i, float ai, Color c, bool o)
 
 Light (const std::string &newDescription, float newIntensity, float newAmbientIntensity, const Color &newColor, const Point4D &newLocation)
 
virtual ~Light ()
 
virtual SceneNodeCopy ()
 Returns a copy of an Light. Every derived class must reimplements this method, to avoid errors with VART::SceneNode::RecursiveCopy. More...
 
Lightoperator= (const Light &light)
 
void SetIntensity (float i)
 
float GetIntensity () const
 
void SetAmbientIntensity (float ai)
 
float GetAmbientIntensity () const
 
void SetColor (const Color &c)
 
Color GetColor () const
 
void Turn (bool on_off)
 Turns a light on or off. More...
 
bool IsOn () const
 
virtual bool RecursiveBoundingBox (BoundingBox *bBox)
 Always returns false, therefore recursive bbox does not exist. More...
 
void SetLocation (const Point4D &newLocation)
 Sets the location of the light. More...
 
Point4D GetLocation () const
 
TransformGetTransform () const
 Gets a pointer to the light transform. More...
 
virtual bool DrawOGL (unsigned int oglLightID) const
 Draws (sets up) a light using OpenGL commands. More...
 
virtual void DrawForPicking () const
 Draws and object, setting pick info. More...
 
- Public Member Functions inherited from VART::SceneNode
 SceneNode ()
 Creates an uninitialized scene node. More...
 
 SceneNode (SceneNode &node)
 
virtual ~SceneNode ()
 
SceneNodeoperator= (const SceneNode &node)
 
virtual SceneNodeRecursiveCopy ()
 
const std::string & GetDescription () const
 Returns a copy of the object's description. More...
 
void SetDescription (const std::string &desc)
 Changes the object's description. More...
 
void AddChild (SceneNode &child)
 Add a child at the end of child list. More...
 
bool DetachChild (SceneNode *childPtr)
 Removes a child from the child list. More...
 
virtual bool DrawOGL () const
 Recursive drawing using OpenGL commands. More...
 
virtual TypeID GetID () const
 Returns type identification of the node. More...
 
void AutoDeleteChildren () const
 Deletes (dealocate memory) recursively all children marked as 'autoDelete'. More...
 
SceneNodeFindChildByName (const std::string &name) const
 Recusively searches its children for a given name. More...
 
std::list< SceneNode * > GetChilds ()
 
bool FindPathTo (SceneNode *targetPtr, SGPath *resultPtr) const
 Search target among children. More...
 
bool FindPathTo (const std::string &targetName, SGPath *resultPtr) const
 Search target among children. More...
 
int GetNodeTypeList (TypeID type, std::list< SceneNode * > &nodeList)
 Find all the nodes of with typeID 'type'. More...
 
virtual void TraverseDepthFirst (SNOperator *operatorPtr) const
 Process all children in depth-first order. More...
 
virtual void TraverseBreadthFirst (SNOperator *operatorPtr) const
 Process all children in breadth-first order. More...
 
virtual void LocateDepthFirst (SNLocator *locatorPtr) const
 Seaches for a particular scene node (depth first) More...
 
virtual void LocateBreadthFirst (SNLocator *locatorPtr) const
 Seaches for a particular scene node (breadth first) More...
 
virtual void XmlPrintOn (std::ostream &os, unsigned int indent) const
 Recursively outputs XML representation of the scene node. More...
 
- Public Member Functions inherited from VART::MemoryObj
 MemoryObj ()
 Default constructor. More...
 
 MemoryObj (const VART::MemoryObj &obj)
 Copy constructor. More...
 

Additional Inherited Members

- Public Types inherited from VART::SceneNode
enum  TypeID {
  NONE, GRAPHIC_OBJ, BOX, CONE,
  CURVE, BEZIER, CYLINDER, IMAGE,
  IMAGE_2D, VOLUME, MESH_OBJECT, SPHERE,
  JOINT, BIAXIAL_JOINT, CONDYLAR_JOINT, ELLIPSOID_JOINT,
  SADDLE_JOINT, PLANE_JOINT, POLYAXIAL_JOINT, UNIAXIAL_JOINT,
  HINGE_JOINT, PIVOT_JOINT, TRANSFORM
}
 
- Static Public Member Functions inherited from VART::Light
static const LightSUN ()
 White directional light towards negative Y. Small ambient intensity. More...
 
static const LightBRIGHT_AMBIENT ()
 Strong, white ambient light. More...
 
- Public Attributes inherited from VART::MemoryObj
bool autoDelete
 
- Static Public Attributes inherited from VART::SceneNode
static bool recursivePrinting = true
 
- Protected Member Functions inherited from VART::Light
unsigned int getOpenGLID (unsigned int lightID) const
 
- Protected Member Functions inherited from VART::SceneNode
virtual bool DrawInstanceOGL () const
 Non-recursive drawing - should be overriden by every derived class. More...
 
bool RecursiveFindPathTo (SceneNode *targetPtr, SGPath *resultPtr) const
 Recursive auxiliar method for FindPathTo. More...
 
bool RecursiveFindPathTo (const std::string &targetName, SGPath *resultPtr) const
 Recursive auxiliar method for FindPathTo. More...
 
- Protected Attributes inherited from VART::Light
Transformtransform
 
Point4D location
 
- Protected Attributes inherited from VART::SceneNode
std::list< SceneNode * > childList
 Child list. More...
 
std::string description
 Textual identification. More...
 

Detailed Description

Spot Light representation.

Bug:
Currently unmaintained. A spot light is an ordinary light plus: attenuation, beamWidth, cutOffAngle, direction and radius.

Definition at line 15 of file spotlight.h.

Constructor & Destructor Documentation

VART::SpotLight::SpotLight ( VART::Point4D  a,
float  bw,
float  coa,
VART::Point4D  l,
VART::Point4D  d,
float  r 
)

Definition at line 7 of file spotlight.cpp.

References VART::Light::location.

Member Function Documentation

VART::Point4D VART::SpotLight::GetAttenuation ( void  )

Definition at line 21 of file spotlight.cpp.

float VART::SpotLight::GetBeamWidth ( void  )

Definition at line 29 of file spotlight.cpp.

float VART::SpotLight::GetCutOffAngle ( void  )

Definition at line 37 of file spotlight.cpp.

VART::Point4D VART::SpotLight::GetDirection ( void  )

Definition at line 45 of file spotlight.cpp.

float VART::SpotLight::GetRadius ( void  )

Definition at line 53 of file spotlight.cpp.

void VART::SpotLight::SetAttenuation ( VART::Point4D  a)

Definition at line 17 of file spotlight.cpp.

void VART::SpotLight::SetBeamWidth ( float  bw)

Definition at line 25 of file spotlight.cpp.

void VART::SpotLight::SetCutOffAngle ( float  coa)

Definition at line 33 of file spotlight.cpp.

void VART::SpotLight::SetDirection ( VART::Point4D  d)

Definition at line 41 of file spotlight.cpp.

void VART::SpotLight::SetRadius ( float  r)

Definition at line 49 of file spotlight.cpp.


The documentation for this class was generated from the following files: