GeoTraitArrow Struct Reference

Inheritance diagram for GeoTraitArrow:

ParticleTraits

List of all members.

Public Types

typedef UInt8 dataType

Static Public Member Functions

static void init (Particles *, DrawActionBase *, dataType &)
static void exit (Particles *, DrawActionBase *, dataType &)
static bool particle (dataType &, UInt32)
static void draw (dataType &, Pnt3f &p, Pnt3f &, Vec3f &dx, Vec3f &dy, Vec3f &dz, Vec3f &s)


Detailed Description

Definition at line 1852 of file OSGParticles.cpp.


Member Typedef Documentation

typedef UInt8 GeoTraitArrow::dataType

Definition at line 1854 of file OSGParticles.cpp.


Member Function Documentation

static void GeoTraitArrow::init ( Particles ,
DrawActionBase ,
dataType  
) [inline, static]

Definition at line 1856 of file OSGParticles.cpp.

01857     {
01858     }

static void GeoTraitArrow::exit ( Particles ,
DrawActionBase ,
dataType  
) [inline, static]

Definition at line 1860 of file OSGParticles.cpp.

01861     {
01862     }

static bool GeoTraitArrow::particle ( dataType ,
UInt32   
) [inline, static]

Definition at line 1864 of file OSGParticles.cpp.

01865     {
01866         return false;
01867     }

static void GeoTraitArrow::draw ( dataType ,
Pnt3f p,
Pnt3f ,
Vec3f dx,
Vec3f dy,
Vec3f dz,
Vec3f s 
) [inline, static]

Definition at line 1869 of file OSGParticles.cpp.

References osg::PointInterface< ValueTypeT, StorageInterfaceT >::getValues().

01872     {
01873         dz*=s[2];
01874         dx*=s[0];
01875        
01876         glNormal3fv((GLfloat*) dy.getValues() );
01877         
01878         glBegin(GL_TRIANGLE_FAN);
01879         
01880         glVertex3fv((GLfloat*) p.getValues() );
01881         
01882         glVertex3f(p[0] + dz[0] * .5f + dx[0]      ,
01883                    p[1] + dz[1] * .5f + dx[1]      ,
01884                    p[2] + dz[2] * .5f + dx[2]      );
01885 
01886         glVertex3f(p[0] + dz[0] * .5f + dx[0] * .5f ,
01887                    p[1] + dz[1] * .5f + dx[1] * .5f ,
01888                    p[2] + dz[2] * .5f + dx[2] * .5f );
01889 
01890         glVertex3f(p[0] + dz[0]       + dx[0] * .5f ,
01891                    p[1] + dz[1]       + dx[1] * .5f ,
01892                    p[2] + dz[2]       + dx[2] * .5f );
01893 
01894         glVertex3f(p[0] + dz[0]       - dx[0] * .5f ,
01895                    p[1] + dz[1]       - dx[1] * .5f ,
01896                    p[2] + dz[2]       - dx[2] * .5f );
01897 
01898         glVertex3f(p[0] + dz[0] * .5f - dx[0] * .5f ,
01899                    p[1] + dz[1] * .5f - dx[1] * .5f ,
01900                    p[2] + dz[2] * .5f - dx[2] * .5f );
01901 
01902         glVertex3f(p[0] + dz[0] * .5f - dx[0]      ,
01903                    p[1] + dz[1] * .5f - dx[1]      ,
01904                    p[2] + dz[2] * .5f - dx[2]      );
01905        
01906         glEnd();
01907     }


The documentation for this struct was generated from the following file:

Generated on Mon Mar 17 12:02:59 2008 for OpenSG by  doxygen 1.5.5