Eidolon
Public Member Functions | Protected Attributes | List of all members
OgreRibbonFigure Class Reference

#include <OgreRenderTypes.h>

Inheritance diagram for OgreRibbonFigure:
Inheritance graph
Collaboration diagram for OgreRibbonFigure:
Collaboration graph

Public Member Functions

 OgreRibbonFigure (const std::string &name, const std::string &matname, OgreRenderScene *scene) throw (RenderException)
 
virtual ~OgreRibbonFigure ()
 
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 void notifyRenderSingleObject (Ogre::Renderable *rend, const Ogre::Pass *pass, const Ogre::AutoParamDataSource *source, const Ogre::LightList *pLightList, bool suppressRenderStateChanges)
 
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 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...
 
virtual void setOrientation (const vec3 &orient)
 
virtual bool isCameraOriented () const
 
virtual vec3 getOrientation () const
 
virtual void setNumRibbons (sval num)
 
virtual sval numRibbons () const
 
virtual sval numNodes (sval ribbon) const throw (IndexException)
 
virtual void setMaxNodes (sval num)
 
virtual sval getMaxNodes ()
 
virtual void clearRibbons ()
 
virtual void removeRibbon (sval ribbon) throw (IndexException)
 
virtual void removeNode (sval ribbon) throw (IndexException)
 
virtual void addNode (sval ribbon, const vec3 &pos, const color &col, real width, const rotator &rot=rotator(), real tex=0.0) throw (IndexException)
 
virtual void setNode (sval ribbon, sval node, const vec3 &pos, const color &col, real width, const rotator &rot=rotator(), real tex=0.0) throw (IndexException)
 
virtual vec3 getNode (sval ribbon, sval node) throw (IndexException)
 
virtual quadruple< color, real, rotator, realgetNodeProps (sval ribbon, sval node) throw (IndexException)
 
- Public Member Functions inherited from RibbonFigure
virtual ~RibbonFigure ()
 
virtual sval getMaxNodes () const
 
- 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 Attributes

Ogre::BillboardChain * bbchain
 
Ogre::SceneNode * node
 
OgreRenderScenescene
 
std::string matname
 
std::string name
 
vec3 orient
 
const VertexBuffertempvb
 
const IndexBuffertempib
 
bool deleteTemp
 
Mutex mutex
 

Constructor & Destructor Documentation

◆ OgreRibbonFigure()

OgreRibbonFigure ( const std::string &  name,
const std::string &  matname,
OgreRenderScene scene 
)
throw (RenderException
)

◆ ~OgreRibbonFigure()

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

Member Function Documentation

◆ addNode()

virtual void addNode ( sval  ribbon,
const vec3 pos,
const color col,
real  width,
const rotator rot = rotator(),
real  tex = 0.0 
)
throw (IndexException
)
inlinevirtual

Reimplemented from RibbonFigure.

Here is the call graph for this function:

◆ clearRibbons()

virtual void clearRibbons ( )
inlinevirtual

Reimplemented from RibbonFigure.

◆ commit()

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

◆ 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 Figure.

◆ 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:

◆ getMaterial()

virtual const char* getMaterial ( ) const
inlinevirtual

Get the figure's material name.

Reimplemented from Figure.

Here is the caller graph for this function:

◆ getMaxNodes()

virtual sval getMaxNodes ( )
inlinevirtual

◆ getName()

virtual const char* getName ( )
inlinevirtual

Get the figure's name.

Reimplemented from Figure.

Here is the caller graph for this function:

◆ getNode()

virtual vec3 getNode ( sval  ribbon,
sval  node 
)
throw (IndexException
)
inlinevirtual

Reimplemented from RibbonFigure.

Here is the call graph for this function:

◆ getNodeProps()

virtual quadruple<color,real,rotator,real> getNodeProps ( sval  ribbon,
sval  node 
)
throw (IndexException
)
inlinevirtual

Reimplemented from RibbonFigure.

Here is the call graph for this function:

◆ getOrientation()

virtual vec3 getOrientation ( ) const
inlinevirtual

Reimplemented from RibbonFigure.

◆ 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:

◆ isCameraOriented()

virtual bool isCameraOriented ( ) const
inlinevirtual

Reimplemented from RibbonFigure.

Here is the call graph for this function:

◆ 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:

◆ notifyRenderSingleObject()

virtual void notifyRenderSingleObject ( Ogre::Renderable *  rend,
const Ogre::Pass *  pass,
const Ogre::AutoParamDataSource *  source,
const Ogre::LightList *  pLightList,
bool  suppressRenderStateChanges 
)
inlinevirtual

◆ numNodes()

virtual sval numNodes ( sval  ribbon) const
throw (IndexException
)
inlinevirtual

Reimplemented from RibbonFigure.

Here is the caller graph for this function:

◆ numRibbons()

virtual sval numRibbons ( ) const
inlinevirtual

Reimplemented from RibbonFigure.

◆ removeNode()

virtual void removeNode ( sval  ribbon)
throw (IndexException
)
inlinevirtual

Reimplemented from RibbonFigure.

◆ removeRibbon()

virtual void removeRibbon ( sval  ribbon)
throw (IndexException
)
inlinevirtual

Reimplemented from RibbonFigure.

◆ 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:

◆ setMaterial()

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

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

Reimplemented from Figure.

◆ setMaxNodes()

virtual void setMaxNodes ( sval  num)
inlinevirtual

Reimplemented from RibbonFigure.

◆ setNode()

virtual void setNode ( sval  ribbon,
sval  node,
const vec3 pos,
const color col,
real  width,
const rotator rot = rotator(),
real  tex = 0.0 
)
throw (IndexException
)
inlinevirtual

Reimplemented from RibbonFigure.

Here is the call graph for this function:

◆ setNumRibbons()

virtual void setNumRibbons ( sval  num)
inlinevirtual

Reimplemented from RibbonFigure.

◆ setOrientation()

virtual void setOrientation ( const vec3 orient)
inlinevirtual

Reimplemented from RibbonFigure.

Here is the call graph for this function:

◆ 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.

◆ setVisible()

virtual void setVisible ( bool  isVisible)
inlinevirtual

Sets the figure's visibility.

Reimplemented from Figure.

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

Member Data Documentation

◆ bbchain

Ogre::BillboardChain* bbchain
protected

◆ deleteTemp

bool deleteTemp
protected

◆ matname

std::string matname
protected

◆ mutex

Mutex mutex
protected

◆ name

std::string name
protected

◆ node

Ogre::SceneNode* node
protected

◆ orient

vec3 orient
protected

◆ scene

OgreRenderScene* scene
protected

◆ tempib

const IndexBuffer* tempib
protected

◆ tempvb

const VertexBuffer* tempvb
protected

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