Eidolon
Public Member Functions | Protected Types | Protected Member Functions | Protected Attributes | Static Protected Attributes | List of all members
OgreBBSetFigure Class Reference

#include <OgreRenderTypes.h>

Inheritance diagram for OgreBBSetFigure:
Inheritance graph
Collaboration diagram for OgreBBSetFigure:
Collaboration graph

Public Member Functions

 OgreBBSetFigure (const std::string &name, const std::string &matname, OgreRenderScene *scene, FigureType type) throw (RenderException)
 
virtual ~OgreBBSetFigure ()
 
virtual void setParent (Figure *fig)
 Set the parent of this figure, if `fig' is transformed then the transformation is applied to this figure as well. More...
 
virtual const char * getName ()
 Get the figure's name. More...
 
virtual void setMaterial (const char *mat) throw (RenderException)
 Set the figure's material, this must name an existing material. More...
 
virtual const char * getMaterial () const
 Get the figure's material name. More...
 
virtual std::pair< vec3, vec3getAABB () const
 
virtual void commit ()
 
virtual void fillData (const VertexBuffer *vb, const IndexBuffer *ib, bool deferFill=false, bool doubleSided=false) throw (RenderException)
 
virtual void setVisible (bool isVisible)
 Sets the figure's visibility. More...
 
virtual void setCameraVisibility (const Camera *cam, bool isVisible)
 
virtual bool isVisible () const
 Returns the figure's visibility state. More...
 
virtual bool isTransparent () const
 Returns true if the figure includes transparent elements. More...
 
virtual bool isOverlay () const
 Returns true if the figure is part of the UI overlay rather than an object in space. More...
 
virtual void setTransparent (bool isTrans)
 Set the transparency state of the figure, this doesn't actually change data but affects how the renderer treates the object. More...
 
virtual void setOverlay (bool isOverlay)
 Set the overlay state of the figure, this doesn't actually change data but affects how the renderer treates the object. More...
 
virtual void setRenderQueue (sval queue)
 Get the render queue of this figure; queues set rendering order such that figures in lower queues are rendered first. More...
 
virtual sval getRenderQueue () const
 Get the figure's render queue. More...
 
virtual void setDimension (real width, real height)
 
virtual real getWidth () const
 
virtual real getHeight () const
 
virtual void setUpVector (const vec3 &v)
 
virtual int numBillboards () const
 
virtual void setBillboardPos (indexval index, const vec3 &pos) throw (IndexException)
 
virtual void setBillboardDir (indexval index, const vec3 &dir) throw (IndexException)
 
virtual void setBillboardColor (indexval index, const color &col) throw (IndexException)
 
virtual void setPosition (const vec3 &v)
 Set the figure's position in world space. More...
 
virtual void setRotation (const rotator &r)
 Set the figure's rotation. More...
 
virtual void setScale (const vec3 &v)
 Set the figure's scale values. More...
 
virtual vec3 getPosition (bool isDerived=false) const
 Get the figure's position in world space. More...
 
virtual vec3 getScale (bool isDerived=false) const
 Get the figure's scale values. More...
 
virtual rotator getRotation (bool isDerived=false) const
 Get the figure's rotation. More...
 
- Public Member Functions inherited from BBSetFigure
virtual ~BBSetFigure ()
 
- Public Member Functions inherited from Figure
virtual ~Figure ()
 
virtual void setTransform (const transform &t)
 Set position, rotation, and scale for this figure simultaneously. More...
 
virtual void setTransform (const vec3 &trans, const vec3 &scale, const rotator &rot)
 Set position, rotation, and scale for this figure simultaneously. More...
 
virtual transform getTransform (bool isDerived=false) const
 Get the figure's position, scale, and rotation transform. More...
 
virtual void setMaterial (const Material *mat) throw (RenderException)
 Set's the figure's material. More...
 

Protected Types

typedef std::vector< Ogre::BillboardSet * > bbsetlist
 

Protected Member Functions

void createBBSet ()
 
Ogre::Billboard * getBillboard (indexval index) const throw (IndexException)
 

Protected Attributes

Ogre::SceneNode * node
 
OgreRenderScenescene
 
std::string matname
 
FigureType type
 
bool isInitialized
 
const VertexBuffertempvb
 
bool deleteTemp
 
bbsetlist sets
 
std::string name
 
real width
 
real height
 
Mutex mutex
 

Static Protected Attributes

static const size_t SETSIZE =10000
 

Member Typedef Documentation

◆ bbsetlist

typedef std::vector<Ogre::BillboardSet*> bbsetlist
protected

Constructor & Destructor Documentation

◆ OgreBBSetFigure()

OgreBBSetFigure ( const std::string &  name,
const std::string &  matname,
OgreRenderScene scene,
FigureType  type 
)
throw (RenderException
)

◆ ~OgreBBSetFigure()

~OgreBBSetFigure ( )
virtual
Here is the call graph for this function:

Member Function Documentation

◆ commit()

void commit ( )
virtual
Here is the call graph for this function:

◆ createBBSet()

void createBBSet ( )
protected

◆ fillData()

void fillData ( const VertexBuffer vb,
const IndexBuffer ib,
bool  deferFill = false,
bool  doubleSided = false 
)
throw (RenderException
)
virtual

Fill the vertex information using the given buffers, `ib' may be NULL for point figure types. If `deferFill' is true then the actual hardware buffers are filled during the next render cycle rather than immediately. In either case data is filled into local memory buffers first then copied to hardware buffers. This implies that calling this method is thread-safe if `deferFill' is true or if its implementation does nothing regardless of arguments. If `doubleSided' is true and the index buffer defined triangles, create backfaces for triangles with correct normals.

Reimplemented from BBSetFigure.

◆ getAABB()

virtual std::pair<vec3,vec3> getAABB ( ) const
inlinevirtual

Reimplemented from Figure.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ getBillboard()

Ogre::Billboard* getBillboard ( indexval  index) const
throw (IndexException
)
inlineprotected

◆ getHeight()

virtual real getHeight ( ) const
inlinevirtual

Reimplemented from BBSetFigure.

◆ getMaterial()

virtual const char* getMaterial ( ) const
inlinevirtual

Get the figure's material name.

Reimplemented from Figure.

Here is the caller graph for this function:

◆ getName()

virtual const char* getName ( )
inlinevirtual

Get the figure's name.

Reimplemented from Figure.

Here is the caller graph for this function:

◆ getPosition()

virtual vec3 getPosition ( bool  isDerived = false) const
inlinevirtual

Get the figure's position in world space.

Reimplemented from Figure.

Here is the call graph for this function:

◆ getRenderQueue()

virtual sval getRenderQueue ( ) const
inlinevirtual

Get the figure's render queue.

Reimplemented from Figure.

◆ getRotation()

virtual rotator getRotation ( bool  isDerived = false) const
inlinevirtual

Get the figure's rotation.

Reimplemented from Figure.

Here is the call graph for this function:

◆ getScale()

virtual vec3 getScale ( bool  isDerived = false) const
inlinevirtual

Get the figure's scale values.

Reimplemented from Figure.

Here is the call graph for this function:

◆ getWidth()

virtual real getWidth ( ) const
inlinevirtual

Reimplemented from BBSetFigure.

◆ isOverlay()

virtual bool isOverlay ( ) const
inlinevirtual

Returns true if the figure is part of the UI overlay rather than an object in space.

Reimplemented from Figure.

◆ isTransparent()

virtual bool isTransparent ( ) const
inlinevirtual

Returns true if the figure includes transparent elements.

Reimplemented from Figure.

◆ isVisible()

virtual bool isVisible ( ) const
inlinevirtual

Returns the figure's visibility state.

Reimplemented from Figure.

Here is the caller graph for this function:

◆ numBillboards()

virtual int numBillboards ( ) const
inlinevirtual

Reimplemented from BBSetFigure.

◆ setBillboardColor()

virtual void setBillboardColor ( indexval  index,
const color col 
)
throw (IndexException
)
inlinevirtual

Reimplemented from BBSetFigure.

Here is the call graph for this function:

◆ setBillboardDir()

virtual void setBillboardDir ( indexval  index,
const vec3 dir 
)
throw (IndexException
)
inlinevirtual

Reimplemented from BBSetFigure.

Here is the call graph for this function:

◆ setBillboardPos()

virtual void setBillboardPos ( indexval  index,
const vec3 pos 
)
throw (IndexException
)
inlinevirtual

Reimplemented from BBSetFigure.

Here is the call graph for this function:

◆ setCameraVisibility()

void setCameraVisibility ( const Camera cam,
bool  isVisible 
)
virtual

Set the visibility for this figure in the given camera, by default a camera can see all figures unless it has been designated as a secondary camera, in which case figures must make themselves explicitly visible to it using this method. This implies that a figure is by default is visible to all primary cameras. All primary cameras are treated the same, so a figure visible to one is visible to all. If `cam' is NULL then visibility is set for all cameras, both primary and secondary, to be `isVisible'.

Reimplemented from Figure.

Here is the call graph for this function:

◆ setDimension()

virtual void setDimension ( real  width,
real  height 
)
inlinevirtual

Reimplemented from BBSetFigure.

◆ setMaterial()

virtual void setMaterial ( const char *  mat)
throw (RenderException
)
inlinevirtual

Set the figure's material, this must name an existing material.

Reimplemented from Figure.

◆ setOverlay()

virtual void setOverlay ( bool  isOverlay)
inlinevirtual

Set the overlay state of the figure, this doesn't actually change data but affects how the renderer treates the object.

Reimplemented from Figure.

◆ setParent()

virtual void setParent ( Figure fig)
inlinevirtual

Set the parent of this figure, if `fig' is transformed then the transformation is applied to this figure as well.

Reimplemented from Figure.

Here is the call graph for this function:

◆ setPosition()

virtual void setPosition ( const vec3 v)
inlinevirtual

Set the figure's position in world space.

Reimplemented from Figure.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ setRenderQueue()

virtual void setRenderQueue ( sval  queue)
inlinevirtual

Get the render queue of this figure; queues set rendering order such that figures in lower queues are rendered first.

Reimplemented from Figure.

◆ setRotation()

virtual void setRotation ( const rotator r)
inlinevirtual

Set the figure's rotation.

Reimplemented from Figure.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ setScale()

virtual void setScale ( const vec3 v)
inlinevirtual

Set the figure's scale values.

Reimplemented from Figure.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ setTransparent()

virtual void setTransparent ( bool  isTrans)
inlinevirtual

Set the transparency state of the figure, this doesn't actually change data but affects how the renderer treates the object.

Reimplemented from Figure.

◆ setUpVector()

virtual void setUpVector ( const vec3 v)
inlinevirtual

Reimplemented from BBSetFigure.

Here is the call graph for this function:

◆ setVisible()

void setVisible ( bool  isVisible)
virtual

Sets the figure's visibility.

Reimplemented from Figure.

Here is the caller graph for this function:

Member Data Documentation

◆ deleteTemp

bool deleteTemp
protected

◆ height

real height
protected

◆ isInitialized

bool isInitialized
protected

◆ matname

std::string matname
protected

◆ mutex

Mutex mutex
protected

◆ name

std::string name
protected

◆ node

Ogre::SceneNode* node
protected

◆ scene

OgreRenderScene* scene
protected

◆ sets

bbsetlist sets
protected

◆ SETSIZE

const size_t SETSIZE =10000
staticprotected

◆ tempvb

const VertexBuffer* tempvb
protected

◆ type

FigureType type
protected

◆ width

real width
protected

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