diff --git a/AUTHORS b/AUTHORS
new file mode 100644
index 000000000..a83c0b9d7
--- /dev/null
+++ b/AUTHORS
@@ -0,0 +1,44 @@
+# $Id$
+#
+# The is a list of authors and contributors to the project.
+# Feel free to add your name and change list.
+
+Robert Osfield Introduction, distribution contents and contacts
+ Reference guides (automatically generated using doc++)
+

+Open Scene Graph Documentation
osg/
+core scene graph reference guide.
+
+UML Diagrams
+
osgUtil/
+scene graph utilities reference guide.
+
osgGLUT/ simple
+GLUT based viewer base classes reference guide.osg
+UML diagram of the osg core library
+
+Mind Maps
+
osgUtil
+UML diagram of the osg utilities libraryDesign
+Pattern used in the OSG.
+
+
+
+
diff --git a/doc/osg/AlphaFunc.html b/doc/osg/AlphaFunc.html
new file mode 100644
index 000000000..3aee26d17
--- /dev/null
+++ b/doc/osg/AlphaFunc.html
@@ -0,0 +1,245 @@
+
+
+
Mission Statement for OSG.class SG_EXPORT osg::AlphaFunc: public Object
+Encapsulte OpenGL glAlphaFunc
+
+
+Inheritance:
+
+
+
+
Encapsulte OpenGL glAlphaFunc+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
static AlphaFunc* instance()
+
virtual bool isSameKindAs(Object* obj)
+
virtual Object* clone() const
+
virtual const char* className() const
+
void setFunction(ComparisonFunction func, float ref)
+
ComparisonFunction getFunction() const
+
float getRefrenceValue() const
+
static void enable()
+
static void disable()
+
void apply()
+
virtual ~AlphaFunc()
+
virtual bool readLocalData(Input& fr)
+
virtual bool writeLocalData(Output& fw)
+
bool matchFuncStr(const char* str, ComparisonFunction& func)
+
const char* getFuncStr(ComparisonFunction func)
+
Alphabetic index HTML hierarchy of classes or Java
Billboard - a Geode which orientates its child osg::GeoSet's to face the eye point.+
Billboard - a Geode which orientates its child osg::GeoSet's to face +the eye point. +Typical uses are for trees, or particle explosions.+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
virtual Object* clone() const
+
virtual bool isSameKindAs(Object* obj)
+
virtual const char* className() const
+
virtual void accept(NodeVisitor& nv)
+
void setAxis(const Vec3& axis)
+
void getAxis(Vec3& axis) const
+
void setMode(Mode mode)
+
int getMode() const
+
void setPos(int i, const Vec3& pos)
+
void getPos(int i, Vec3& pos) const
+
virtual bool addGeoSet( GeoSet *gset )
+
virtual bool addGeoSet(GeoSet *gset, const Vec3& pos)
+
virtual bool removeGeoSet( GeoSet *gset )
+
void calcRotation(const Vec3& eye_local, const Vec3& pos_local, Matrix& mat)
+
void calcTransform(const Vec3& eye_local, const Vec3& pos_local, Matrix& mat)
+
virtual ~Billboard()
+
virtual bool readLocalData(Input& fr)
+
virtual bool writeLocalData(Output& fw)
+
virtual bool computeBound( void )
+
typedef std::vector<Vec3> PositionList
+
Alphabetic index HTML hierarchy of classes or Java
General purpose axis-aligned bounding box class for enclosing objects/vertices.+
General purpose axis-aligned bounding box class for enclosing objects/vertices. +Used to bounding the leaf objects in the scene, +i.e. osg::GeoSet's to assist in view frustum culling etc.+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
Vec3 _max
+
BoundingBox()
+
void init()
+
bool isValid() const
+
float& xMin()
+
float xMin() const
+
float& yMin()
+
float yMin() const
+
float& zMin()
+
float zMin() const
+
float& xMax()
+
float xMax() const
+
float& yMax()
+
float yMax() const
+
float& zMax()
+
float zMax() const
+
Vec3 center() const
+
float radius() const
+
float radius2() const
+
Vec3 corner(unsigned int pos) const
+
void expandBy(const Vec3& v)
+
void expandBy(const BoundingBox& bb)
+
void expandBy(const BoundingSphere& sh)
+
bool contains(const Vec3& v)
+
Alphabetic index HTML hierarchy of classes or Java
General purpose bounding sphere class for enclosing nodes/objects/vertices.+
General purpose bounding sphere class for enclosing nodes/objects/vertices. +Used to bound internal osg::Node's in the scene, +to assist in view frustrum culling etc. Similar in function to BoundingBox +but is quicker for evaluating culling, but generally encloses a greater volume +than a BoundingBox so will not cull so aggressively.+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
float _radius
+
BoundingSphere()
+
void init()
+
bool isValid() const
+
const Vec3& center() const
+
Vec3& center()
+
float radius() const
+
float& radius()
+
float radius2() const
+
void expandBy(const Vec3& v)
+
void expandRadiusBy(const Vec3& v)
+
void expandBy(const BoundingSphere& sh)
+
void expandRadiusBy(const BoundingSphere& sh)
+
bool contains(const Vec3& v)
+
Alphabetic index HTML hierarchy of classes or Java
Camera class for encapsulating the view position and orientation.+
Camera class for encapsulating the view position and orientation. +This is the first implementation of osg::Camera class and +currently is a perspective camera, but in future will be +a base class from which PerpsectivCamera,FrustumCamera and OrthoCamera +will be derived.+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
virtual ~Camera()
+
void setFieldOfView(double fovy, double aspectRatio)
+
void setFieldOfViewY(double fovy)
+
double getFieldOfViewY() const
+
void setAspectRatio(double aspectRatio)
+
double getAspectRatio() const
+
void home()
+
void setView(Vec3 eyePoint, Vec3 lookPoint, Vec3 upVector)
+
const Vec3& getEyePoint() const
+
const Vec3& getLookPoint() const
+
const Vec3& getUpVector() const
+
Vec3 getSideVector() const
+
Vec3 getLookVector() const
+
float getFocalDistance() const
+
void setNearPlane(double nearPlane)
+
double getNearPlane() const
+
void setFarPlane(double farPlane)
+
double getFarPlane() const
+
void draw_PROJECTION() const
+
void draw_MODELVIEW() const
+
void mult(const Camera& camera, const Matrix& m)
+
void mult(const Matrix& m, const Camera& camera)
+
Alphabetic index HTML hierarchy of classes or Java
Class to globally enable/disable OpenGL's polygon culling mode (GL_CULL_FACE)+
Class to globally enable/disable OpenGL's polygon culling mode +(GL_CULL_FACE)+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
static CullFace* instance()
+
virtual bool isSameKindAs(Object* obj)
+
virtual Object* clone() const
+
virtual const char* className() const
+
void setMode(Mode mode)
+
static void enable()
+
static void disable()
+
void apply()
+
virtual ~CullFace()
+
virtual bool readLocalData(Input& fr)
+
Alphabetic index HTML hierarchy of classes or Java
DCS - Dynamic Coordinate System a is group which all children are transformed by the the DCS's osg::Matrix.+
DCS - Dynamic Coordinate System a is group which all children +are transformed by the the DCS's osg::Matrix. Typical uses +of the DCS is for positioning objects within a scene or +producing trakerball functionality.+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
DCS(const Matrix& matix)
+
virtual Object* clone() const
+
virtual bool isSameKindAs(Object* obj)
+
virtual const char* className() const
+
virtual void accept(NodeVisitor& nv)
+
void setMatrix(const Matrix& mat )
+
Matrix* getMatrix()
+
void preTranslate( float tx, float ty, float tz )
+
void preRotate( float deg, float x, float y, float z )
+
bool computeBound()
+
virtual ~DCS()
+
virtual bool readLocalData(Input& fr)
+
Alphabetic index HTML hierarchy of classes or Java
DynamicLibrary - encapsulates the loading and unloading of dynamic libraries, typically used for loading ReaderWriter plug-ins+
DynamicLibrary - encapsulates the loading and unloading of dynamic libraries, +typically used for loading ReaderWriter plug-ins+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
typedef void* PROC_ADDRESS
+
typedef void* HANDLE
+
typedef void* PROC_ADDRESS
+
static DynamicLibrary* loadLibrary(const std::string& libraryName)
+
const std::string& getName() const
+
const std::string& getFullName() const
+
HANDLE getHandle() const
+
PROC_ADDRESS getProcAddress(const std::string& procName)
+
DynamicLibrary(const std::string& name, HANDLE handle)
+
Alphabetic index HTML hierarchy of classes or Java
return true if OpenGL "extension" is supported.+ + +
return true if OpenGL "extension" is supported. +note: Must only called within a valid OpenGL context, +undefined behaviour may occur otherwise.+
Alphabetic index HTML hierarchy of classes or Java
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
Field(const Field& field)
+
virtual ~Field()
+
virtual Field& operator = (const Field& ic)
+
void reset()
+
void addChar(char c)
+
int getNoCharacters() const
+
void setWithinQuotes(bool withinQuotes=true)
+
bool getWithinQuotes()
+
void setNoNestedBrackets(int no)
+
int getNoNestedBrackets()
+
enum FieldType
+
+
+
+
+
FieldType getFieldType() const
+
bool isValid() const
+
bool isOpenBracket() const
+
bool isCloseBracket() const
+
bool isWord() const
+
bool matchWord(const char* str) const
+
bool matchWord(const char* str, int noCharacters) const
+
bool isString() const
+
bool matchString(const char* str) const
+
bool matchString(const char* str, int noCharacters) const
+
bool isQuotedString() const
+
const char* getStr() const
+
char* takeStr()
+
bool isInt() const
+
bool matchInt(int i) const
+
bool getInt(int& i) const
+
bool isFloat() const
+
bool matchFloat(float f) const
+
bool getFloat(float& f) const
+
bool isDouble() const
+
bool matchDouble(double f) const
+
bool getDouble(double& d) const
+
static FieldType calculateFieldType(const char* str, bool withinQuotes=false)
+
void _init()
+
void _free()
+
void _copy(const Field& ic)
+
int _fieldCacheCapacity
+
int _fieldCacheSize
+
char* _fieldCache
+
Alphabetic index HTML hierarchy of classes or Java
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
FieldReader(const FieldReader& ic)
+
virtual ~FieldReader()
+
virtual FieldReader& operator = (const FieldReader& ic)
+
void attach(istream* input)
+
void detach()
+
virtual bool eof() const
+
bool readField(Field& fieldPtr)
+
void ignoreField()
+
int getNoNestedBrackets() const
+
Alphabetic index HTML hierarchy of classes or Java
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
FieldReaderIterator(const FieldReaderIterator& ic)
+
virtual ~FieldReaderIterator()
+
virtual FieldReaderIterator& operator = (const FieldReaderIterator& ic)
+
void attach(istream* input)
+
void detach()
+
virtual bool eof() const
+
FieldReader& getFieldReader()
+
void insert(int pos, Field* field)
+
void insert(int pos, const char* str)
+
Field& operator [] (int pos)
+
Field& field(int pos)
+
FieldReaderIterator& operator ++ ()
+
FieldReaderIterator& operator += (int no)
+
void advanceOverCurrentFieldOrBlock()
+
void advanceToEndOfCurrentBlock()
+
Alphabetic index HTML hierarchy of classes or Java
Fog - encapsulates OpenGL fog state.+
Fog - encapsulates OpenGL fog state.+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
static Fog* instance()
+
virtual Object* clone() const
+
virtual bool isSameKindAs(Object* obj)
+
virtual const char* className() const
+
static void enable( void )
+
static void disable( void )
+
void apply( void )
+
void setMode( uint mode )
+
uint getMode( void )
+
void setDensity( float density )
+
float getDensity( void )
+
void setStart( float start )
+
float getStart( void )
+
void setEnd( float end )
+
float getEnd( void )
+
void setColor( Vec4 &color )
+
virtual ~Fog( void )
+
Alphabetic index HTML hierarchy of classes or Java
Encapsulates OpenGL drawing primitives, geometry and optional binding of normal, color and texture coordinates.+
Encapsulates OpenGL drawing primitives, geometry and +optional binding of normal, color and texture coordinates. Used +for representing the visible objects in the scene. State attributes +for a GeoSet are maintained in GeoState which the GeoSet maintains +a referenced counted pointer to. Both GeoSet's and GeoState's can +be shared for optimal memory usage and graphics performance.+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
POINTS
+
LINES
+
LINE_STRIP
+
FLAT_LINE_STRIP
+
LINE_LOOP
+
TRIANGLES
+
TRIANGLE_STRIP
+
FLAT_TRIANGLE_STRIP
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
IA_V2F
+
IA_V3F
+
IA_C4UB_V2F
+
IA_C4UB_V3F
+
IA_C3F_V3F
+
IA_N3F_V3F
+
IA_C4F_N3F_V3F
+
IA_T2F_V3F
+
IA_T4F_V4F
+
IA_T2F_C4UB_V3F
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
static GeoSet* instance()
+
virtual Object* clone() const
+
virtual bool isSameKindAs(Object* obj)
+
virtual const char* className() const
+
void setNumPrims( int n )
+
int getNumPrims( void )
+
void setPrimType( PrimitiveType type )
+
PrimitiveType getPrimType( void )
+
void setPrimLengths( int *lens )
+
int* getPrimLengths( void )
+
void computeNumVerts()
+
int getNumCoords()
+
Vec3* getCoords()
+
int getNumIndices()
+
ushort* getCIndex()
+
void setCoords( Vec3 *cp )
+
void setCoords( Vec3 *cp, ushort *ci )
+
int getNumNormals()
+
Vec3* getNormals()
+
int getNumNIndices()
+
ushort* getNIndex()
+
void setNormals( Vec3 *np )
+
void setNormals( Vec3 *np, ushort *ni )
+
void setNormalBinding( BindingType binding )
+
BindingType getNormalBinding()
+
int getNumColors()
+
Vec4* getColors()
+
int getNumCIndices()
+
ushort* getColIndex()
+
void setColors( Vec4 *lp )
+
void setColors( Vec4 *lp, ushort *li )
+
void setColorBinding( BindingType binding )
+
BindingType getColorBinding()
+
int getNumTCoords()
+
Vec2* getTCoords()
+
int getNumTIndices()
+
ushort* getTIndex()
+
void setTextureCoords( Vec2 *tc )
+
void setTextureCoords( Vec2 *tc, ushort *ti )
+
void setTextureBinding( BindingType binding )
+
BindingType getTextureBinding()
+
void setInterleavedArray( InterleaveArrayType format, float *ia )
+
void setInterleavedArray( InterleaveArrayType format, float *ia, ushort *iai )
+
void setGeoState(GeoState *state)
+
GeoState* getGeoState() const
+
void setUseDisplayList(bool flag)
+
bool getUseDisplayList()
+
void dirtyDisplayList()
+
virtual const BoundingBox& getBound()
+
void draw( void )
+
virtual void drawImmediateMode()
+
void compile( void )
+
bool check()
+
GeoSet(const GeoSet&)
+
GeoSet& operator = (const GeoSet&)
+
virtual ~GeoSet()
+
bool matchBindingTypeStr(const char* str, BindingType& mode)
+
const char* getBindingTypeStr(BindingType mode)
+
Alphabetic index HTML hierarchy of classes or Java
Encapsulates OpenGL state modes and attributes.+
+Encapsulates OpenGL state modes and attributes. +Used to specificy textures etc of osg::GeoSet's which hold references +to a single osg::GeoState. GeoState can be shared between GeoSet's +and is recommend if possible as it minimize expensive state changes +in the graphics pipeline.+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
FACE_CULL
+
FOG
+
LIGHTING
+
MATERIAL
+
POINT
+
POLYGON_OFFSET
+
TEXENV
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
static GeoState* instance()
+
virtual Object* clone() const
+
virtual bool isSameKindAs(Object* obj)
+
const char* className() const
+
void setGlobalDefaults()
+
void setAllToInherit()
+
void setMode(AttributeType type, AttributeMode mode)
+
AttributeMode getMode(AttributeType type) const
+
void setAttribute(AttributeType type, Object *attribute)
+
Object* getAttribute(AttributeType type) const
+
bool isTransparent()
+
void apply()
+
void apply(GeoState* global, GeoState* prev)
+
bool check()
+
static AttributeMode combineMode(const AttributeMode g, const AttributeMode p, const AttributeMode c)
+
static AttributeMode mergeMode(const AttributeMode lhs, const AttributeMode rhs)
+
virtual ~GeoState()
+
GeoState(const GeoState&)
+
GeoState& operator = (const GeoState&)
+
virtual bool readLocalData(Input& fr)
+
virtual bool writeLocalData(Output& fw)
+
bool matchModeStr(const char* str, AttributeMode& mode)
+
const char* getModeStr(AttributeMode flag)
+
AttributeMode _transparencing
+
AttributeMode _face_culling
+
AttributeMode _lighting
+
AttributeMode _texturing
+
AttributeMode _fogging
+
AttributeMode _texgening
+
AttributeMode _antialiasing
+
AttributeMode _colortable
+
AttributeMode _pointSmoothing
+
AttributeMode _polygonOffsetting
+
AttributeMode _alphaTesting
+
ref_ptr<Texture> _texture
+
ref_ptr<TexGen> _texgen
+
ref_ptr<Material> _material
+
ref_ptr<TexEnv> _texenv
+
ref_ptr<Transparency> _transparency
+
ref_ptr<TexMat> _texmat
+
ref_ptr<Fog> _fog
+
ref_ptr<Point> _point
+
ref_ptr<PolygonOffset> _polygonOffset
+
Alphabetic index HTML hierarchy of classes or Java
Leaf Node for grouping GeoSets+
Leaf Node for grouping GeoSets+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
Geode()
+
virtual Object* clone() const
+
virtual bool isSameKindAs(Object* obj)
+
virtual const char* className() const
+
virtual void accept(NodeVisitor& nv)
+
virtual bool addGeoSet( GeoSet *gset )
+
virtual bool removeGeoSet( GeoSet *gset )
+
virtual bool replaceGeoSet( GeoSet *origGset, GeoSet *newGset )
+
int getNumGeosets( void ) const
+
GeoSet* getGeoSet( int i )
+
bool containsGeoSet( GeoSet* gset)
+
GeoSetList::iterator findGeoSet( GeoSet* gset)
+
void compileGeoSets( void )
+
virtual ~Geode()
+
virtual bool readLocalData(Input& fr)
+
virtual bool writeLocalData(Output& fw)
+
Alphabetic index HTML hierarchy of classes or Java
General group node which maintains a list of children.+
General group node which maintains a list of children. +Children are reference counted to allow children to be shared +with memory management handled automatically via osg::Referenced.+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
Group()
+
virtual Object* clone() const
+
virtual bool isSameKindAs(Object* obj)
+
virtual const char* className() const
+
virtual void accept(NodeVisitor& nv)
+
virtual void traverse(NodeVisitor& nv)
+
virtual bool addChild( Node *child )
+
virtual bool removeChild( Node *child )
+
virtual bool replaceChild( Node *origChild, Node* newChild )
+
int getNumChildren( void )
+
Node* getChild( int i )
+
bool containsNode( Node* node )
+
ChildList::iterator findNode( Node* node )
+
virtual ~Group()
+
virtual bool readLocalData(Input& fr)
+
Alphabetic index HTML hierarchy of classes or Java
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
Hit(const Hit& hit)
+
~Hit()
+
Hit& operator = (const Hit& hit)
+
typedef std::vector<int> VecIndexList
+
bool operator < (const Hit& hit) const
+
float _ratio
+
Seg* _originalSeg
+
Seg* _localSeg
+
NodePath _nodePath
+
Geode* _geode
+
GeoSet* _geoset
+
Alphabetic index HTML hierarchy of classes or Java
Image class for encapsulating the storage texture image data+
Image class for encapsulating the storage texture image data+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
virtual Object* clone() const
+
virtual bool isSameKindAs(Object* obj)
+
virtual const char* className() const
+
const char* getFileName()
+
void setFileName(const char* fileName)
+
void setImage(int s, int t, int r, int internalFormat, unsigned int pixelFormat, unsigned int dataType, unsigned char *data)
+
int s()
+
int t()
+
int r()
+
int internalFormat()
+
unsigned int pixelFormat()
+
unsigned int dataType()
+
unsigned char* data()
+
void scaleImage(int s, int t, int r)
+
void ensureDimensionsArePowerOfTwo()
+
virtual ~Image()
+
virtual bool readLocalData(Input& fr)
+
virtual bool writeLocalData(Output& fw)
+
char* _fileName
+
int _s
+
int _t
+
int _r
+
Alphabetic index HTML hierarchy of classes or Java
Class for managing the reading of ASCII osg files+
Class for managing the reading of ASCII osg files+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
virtual ~Input()
+
virtual Object* readObject()
+
virtual Object* readObject(const std::string& fileName)
+
virtual Image* readImage()
+
virtual Image* readImage(const std::string& fileName)
+
virtual Node* readNode()
+
virtual Node* readNode(const std::string& fileName)
+
virtual Object* getObjectForUniqueID(const std::string& uniqueID)
+
virtual void regisiterUniqueIDForObject(const std::string& uniqueID, Object* obj)
+
Alphabetic index HTML hierarchy of classes or Java
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
Matrix* _matrix
+
Matrix* _inverse
+
typedef std::vector< std::pair<Seg*,Seg*> > SegList
+
SegList _segList
+
typedef unsigned int SegmentMask
+
typedef std::vector<SegmentMask> SegmentMaskStack
+
SegmentMaskStack _segmentMaskStack
+
bool isCulled(const BoundingSphere& bs, SegmentMask& segMaskOut)
+
bool isCulled(const BoundingBox& bb, SegmentMask& segMaskOut)
+
Alphabetic index HTML hierarchy of classes or Java
Basic visitor for ray based collisions of a scene.+
Basic visitor for ray based collisions of a scene. +Note, still in development, current version has not +pratical functionality!+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
virtual ~IntersectVisitor()
+
void reset()
+
void addSeg(Seg* seg)
+
enum HitReportingMode
+
+
+
+
+
void setHitReportingMode(HitReportingMode hrm)
+
HitReportingMode getHitReportingMode()
+
typedef std::multiset<Hit> HitList
+
typedef std::map<Seg*,HitList > SegHitListMap
+
HitList& getHitList(Seg* seg)
+
int getNumHits(Seg* seg)
+
bool hits()
+
virtual void apply(Node&)
+
virtual void apply(Geode& node)
+
virtual void apply(Billboard& node)
+
virtual void apply(Group& node)
+
virtual void apply(DCS& node)
+
virtual void apply(Switch& node)
+
virtual void apply(LOD& node)
+
virtual void apply(Scene& node)
+
bool intersect(GeoSet& gset)
+
void pushMatrix(const Matrix& matrix)
+
void popMatrix()
+
bool enterNode(Node& node)
+
void leaveNode()
+
typedef std::vector<IntersectState*> IntersectStateStack
+
IntersectStateStack _intersectStateStack
+
NodePath _nodePath
+
Alphabetic index HTML hierarchy of classes or Java
LOD - Level Of Detail group node which allows switching between children depending on distance from eye point.+
LOD - Level Of Detail group node which allows switching between children +depending on distance from eye point. +Typical uses are for load balancing - objects further away from +the eye point are rendered at a lower level of detail, and at times +of high stress on the graphics pipeline lower levels of detail can +also be chosen.+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
virtual Object* clone() const
+
virtual bool isSameKindAs(Object* obj)
+
virtual const char* className() const
+
virtual void accept(NodeVisitor& nv)
+
virtual void traverse(NodeVisitor& nv)
+
void setRange(unsigned int index, float range)
+
float getRange(unsigned int index)
+
int getNumRanges()
+
void setCenter(const Vec3 ¢er)
+
const Vec3& getCenter()
+
int evaluate(const Vec3& eye_local, float bias=1.0f)
+
virtual ~LOD()
+
virtual bool readLocalData(Input& fr)
+
virtual bool writeLocalData(Output& fw)
+
typedef std::vector<float> RangeList
+
Alphabetic index HTML hierarchy of classes or Java
Light state class which encapsulates OpenGL glLight() functionality+
Light state class which encapsulates OpenGL glLight() functionality+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
static Light* instance()
+
virtual Object* clone() const
+
virtual bool isSameKindAs(Object* obj)
+
virtual const char* className() const
+
void on( void )
+
void off( void )
+
static void enable( void )
+
static void disable( void )
+
void apply( void )
+
void setAmbient( const Vec4& ambient )
+
const Vec4& getAmbient() const
+
void setDiffuse( const Vec4& diffuse )
+
const Vec4& getDiffuse() const
+
void setSpecular( const Vec4& specular )
+
const Vec4& getSpecular() const
+
void setPosition( const Vec4& position )
+
const Vec4& getPosition() const
+
void setDirection( const Vec3& direction )
+
const Vec3& getDirection() const
+
void setConstantAttenuation( float constant_attenuation )
+
float setConstantAttenuation() const
+
void setLinearAttenuation( float linear_attenuation )
+
float getLinearAttenuation() const
+
void setQuadraticAttenuation( float quadratic_attenuation )
+
float getQuadraticAttenuation() const
+
void setSpotExponent( float spot_exponent )
+
float getSpotExponent() const
+
void setSpotCutoff( float spot_cutoff )
+
float getSpotCutoff()
+
void captureLightState()
+
virtual ~Light( void )
+
void init( void )
+
int _lightnum
+
bool _on
+
Vec4 _ambient
+
Vec4 _diffuse
+
Vec4 _specular
+
Vec4 _position
+
Vec3 _direction
+
float _constant_attenuation
+
float _linear_attenuation
+
float _quadratic_attenuation
+
Alphabetic index HTML hierarchy of classes or Java
Leaf Node for defining a light in the scene+
Leaf Node for defining a light in the scene+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
virtual Object* clone() const
+
virtual bool isSameKindAs(Object* obj)
+
virtual const char* className() const
+
virtual void accept(NodeVisitor& nv)
+
void setLight(Light* light)
+
Light* getLight()
+
virtual ~LightSource()
+
virtual bool readLocalData(Input& fr)
+
virtual bool writeLocalData(Output& fw)
+
Alphabetic index HTML hierarchy of classes or Java
Class to globally control OpenGL's lighting+
Class to globally control OpenGL's lighting+
Alphabetic index HTML hierarchy of classes or Java
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
static Material* instance()
+
virtual Object* clone() const
+
virtual bool isSameKindAs(Object* obj)
+
const char* className() const
+
void apply( void )
+
void setColorMode(ColorMode mode)
+
void setAmbient( MaterialFace face, const Vec4& ambient )
+
const Vec4& getAmbient(MaterialFace face) const
+
bool getAmbientFrontAndBack()
+
void setDiffuse( MaterialFace face, const Vec4& diffuse )
+
const Vec4& getDiffuse(MaterialFace face) const
+
bool getDiffuseFrontAndBack()
+
void setSpecular( MaterialFace face, const Vec4& specular )
+
const Vec4& getSpecular(MaterialFace face) const
+
bool getSpecularFrontAndBack()
+
void setEmission( MaterialFace face, const Vec4& emission )
+
const Vec4& getEmission(MaterialFace face) const
+
bool getEmissionFrontAndBack()
+
void setShininess( MaterialFace face, float shininess )
+
float getShininess(MaterialFace face) const
+
bool getShininessFrontAndBack()
+
virtual ~Material( void )
+
virtual bool readLocalData(Input& fr)
+
virtual bool writeLocalData(Output& fw)
+
bool matchFaceAndColor(Input& fr, const char* name, MaterialFace& mf, Vec4& color)
+
ColorMode _colorMode
+
bool _ambientFrontAndBack
+
Vec4 _ambientFront
+
Vec4 _ambientBack
+
bool _diffuseFrontAndBack
+
Vec4 _diffuseFront
+
Vec4 _diffuseBack
+
bool _specularFrontAndBack
+
Vec4 _specularFront
+
Vec4 _specularBack
+
bool _emissionFrontAndBack
+
Vec4 _emissionFront
+
Vec4 _emissionBack
+
Alphabetic index HTML hierarchy of classes or Java
4x4 Matrix for storage & manipulation of transformations in scene graph.+
4x4 Matrix for storage & manipulation of transformations in scene graph. +Provides basic maths operations, IO and via osg::Object reference counting.+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
Matrix(const Matrix& matrix)
+
Matrix( float a00, float a01, float a02, float a03, float a10, float a11, float a12, float a13, float a20, float a21, float a22, float a23, float a30, float a31, float a32, float a33)
+
Matrix& operator = (const Matrix& matrix)
+
virtual ~Matrix()
+
static Matrix* instance()
+
virtual Object* clone() const
+
virtual bool isSameKindAs(Object* obj)
+
virtual const char* className() const
+
void makeIdent()
+
void set(const float* m)
+
void copy(const Matrix& matrix)
+
void makeScale(float sx, float sy, float sz)
+
void preScale( float sx, float sy, float sz, const Matrix& m )
+
void postScale( const Matrix& m, float sx, float sy, float sz )
+
void preScale( float sx, float sy, float sz )
+
void postScale( float sx, float sy, float sz )
+
void makeTrans( float tx, float ty, float tz )
+
void preTrans( float tx, float ty, float tz, const Matrix& m )
+
void postTrans( const Matrix& m, float tx, float ty, float tz )
+
void preTrans( float tx, float ty, float tz )
+
void postTrans( float tx, float ty, float tz )
+
void makeRot( float deg, float x, float y, float z )
+
void preRot( float deg, float x, float y, float z, const Matrix& m )
+
void postRot( const Matrix& m, float deg, float x, float y, float z )
+
void preRot( float deg, float x, float y, float z )
+
void postRot( float deg, float x, float y, float z )
+
void setTrans( float tx, float ty, float tz )
+
void setTrans( const Vec3& v )
+
Vec3 getTrans() const
+
void preMult(const Matrix& m)
+
void postMult(const Matrix& m)
+
void mult(const Matrix& lhs, const Matrix& rhs)
+
Matrix operator * (const Matrix& m) const
+
inline Vec3 operator * (const Vec3& v) const
+
inline friend Vec3 operator * (const Vec3& v, const Matrix& m)
+
bool invert(const Matrix& m)
+
float _mat[4][4]
+
Alphabetic index HTML hierarchy of classes or Java
Class for adapting the memory management of external data.+
Class for adapting the memory management of external data. +Typically used to specify the memory management of user data +which can be attached to osg::Node.+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
virtual void incrementReference(void* )
+
virtual void decrementReference(void* )
+
virtual void* clone(void* )
+
virtual bool write(Output& , void* )
+
virtual bool read(Input& , void* )
+
Alphabetic index HTML hierarchy of classes or Java
Base class for all internal nodes in the scene graph.+
Base class for all internal nodes in the scene graph. +Provides interface for most common node operations (Composite Pattern).+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
virtual Object* clone() const
+
Node* cloneNode() const
+
virtual bool isSameKindAs(Object* obj)
+
virtual const char* className() const
+
virtual void accept(NodeVisitor& nv)
+
virtual void ascend(NodeVisitor& nv)
+
virtual void traverse(NodeVisitor& )
+
void setName( const std::string& name )
+
void setName( const char* name )
+
const std::string& getName( void )
+
typedef std::vector<Group*> ParentList
+
const ParentList& getParents() const
+
Group* getParent(int i) const
+
int getNumParents() const
+
void setUserData(void* data, MemoryAdapter* ma=0L)
+
void* getUserData() const
+
MemoryAdapter* getMemoryAdapter() const
+
typedef unsigned int NodeMask
+
void setNodeMask(NodeMask nm)
+
NodeMask getNodeMask()
+
typedef std::vector<std::string> DescriptionList
+
const DescriptionList& getDescriptions() const
+
DescriptionList& getDescriptions()
+
const std::string& getDescription(int i) const
+
std::string& getDescription(int i)
+
int getNumDescriptions() const
+
void addDescription(const std::string& desc)
+
const BoundingSphere& getBound()
+
void dirtyBound()
+
virtual ~Node()
+
virtual bool readLocalData(Input& fr)
+
virtual bool writeLocalData(Output& fw)
+
virtual bool computeBound( void )
+
BoundingSphere _bsphere
+
bool _bsphere_computed
+
std::string _name
+
ParentList _parents
+
friend Group
+
void* _userData
+
ref_ptr<MemoryAdapter> _memoryAdapter
+
Alphabetic index HTML hierarchy of classes or Java
Convinience functor for assisting visiting of arrays of osg::Node's+ +
Convinience functor for assisting visiting of arrays of osg::Node's+
+
+
+
NodeAcceptOp(NodeVisitor& nv)
+
Alphabetic index HTML hierarchy of classes or Java
A vector of Nodes pointers which is used to describe the path from a root node to a descendant+ + +
A vector of Nodes pointers which is used to describe the path from a root node to a descendant+
Alphabetic index HTML hierarchy of classes or Java
Visitor for type safe operations on osg::Node's.+
Visitor for type safe operations on osg::Node's. +Based on GOF's Visitor pattern.+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
virtual ~NodeVisitor()
+
void setTraverseMode(TraversalMode mode)
+
TraversalMode getTraverseMode()
+
void setTraverseVisitor(NodeVisitor* nv)
+
NodeVisitor* getTraverseVisitor()
+
void traverse(Node& node)
+
virtual void apply(Node& node)
+
virtual void apply(Geode& node)
+
virtual void apply(Billboard& node)
+
virtual void apply(LightSource& node)
+
virtual void apply(Group& node)
+
virtual void apply(DCS& node)
+
virtual void apply(Switch& node)
+
virtual void apply(Sequence& node)
+
virtual void apply(LOD& node)
+
virtual void apply(Scene& node)
+
Alphabetic index HTML hierarchy of classes or Java
Alphabetic index HTML hierarchy of classes or Java
Alphabetic index HTML hierarchy of classes or Java
Base class/standard interface for objects which require IO support, cloning and reference counting.+
Base class/standard interface for objects which require IO support, +cloning and reference counting. +Based on GOF Composite, Prototype and Template Method patterns.+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
virtual Object* clone() const
+
virtual bool isSameKindAs(Object*)
+
virtual const char* className() const
+
virtual Object* readClone(Input& fr)
+
virtual bool write(Output& fw)
+
virtual ~Object()
+
virtual bool readLocalData(Input&)
+
virtual bool writeLocalData(Output&)
+
Alphabetic index HTML hierarchy of classes or Java
ofstream wrapper class for adding support for indenting.+
ofstream wrapper class for adding support for indenting. +Used in output of .osg ASCII files to improve their readability.+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
virtual ~Output()
+
Output& indent()
+
int getIndentStep() const
+
void setIndentStep(int step)
+
int getIndent() const
+
void setIndent(int indent)
+
int getNumIndicesPerLine() const
+
void setNumIndicesPerLine(int num)
+
void moveIn()
+
void moveOut()
+
bool getUniqueIDForObject(Object* obj, std::string& uniqueID)
+
bool createUniqueIDForObject(Object* obj, std::string& uniqueID)
+
bool registerUniqueIDForObject(Object* obj, std::string& uniqueID)
+
Output(const Output&)
+
Output& operator = (const Output&)
+
virtual void _init()
+
virtual void _free()
+
int _indent
+
int _indentStep
+
int _numIndicesPerLine
+
typedef std::map<Object*,std::string> UniqueIDToLabelMapping
+
Alphabetic index HTML hierarchy of classes or Java
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
static Point* instance()
+
virtual Object* clone() const
+
virtual bool isSameKindAs(Object* obj)
+
virtual const char* className() const
+
void setSize(float size)
+
void setFadeThresholdSize(float fadeThresholdSize)
+
void setDistanceAttenuation(const Vec3& distanceAttenuation)
+
static void enableSmooth( void )
+
static void disableSmooth( void )
+
void apply( void )
+
static void init_GL_EXT()
+
virtual ~Point()
+
virtual bool readLocalData(Input& fr)
+
virtual bool writeLocalData(Output& fw)
+
Alphabetic index HTML hierarchy of classes or Java
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
static PolygonOffset* instance()
+
virtual Object* clone() const
+
virtual bool isSameKindAs(Object* obj)
+
virtual const char* className() const
+
void setOffset(float factor, float units)
+
static void enable( void )
+
static void disable( void )
+
void apply( void )
+
virtual ~PolygonOffset()
+
virtual bool readLocalData(Input& fr)
+
Alphabetic index HTML hierarchy of classes or Java
A quaternion class.+
A quaternion class. It can be used to represent an orientation in 3D space.+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
Quat( void )
+
Quat( float x, float y, float z, float w )
+
Quat( const Vec4& vec )
+
inline Vec4 asVec4( void ) const
+
inline Vec3 asVec3( void ) const
+
inline Quat operator * (const float& rhs) const
+
inline Quat& operator *= (const float& rhs)
+
inline Quat operator*(const Quat& rhs) const
+
inline Quat& operator*=(const Quat& rhs)
+
inline Quat operator / (const float& rhs) const
+
inline Quat& operator /= (const float& rhs)
+
inline Quat operator/(const Quat& denom) const
+
inline Quat& operator/=(const Quat& denom)
+
inline Quat operator + (const Quat& rhs) const
+
inline Quat& operator += (const Quat& rhs)
+
inline Quat operator - (const Quat& rhs) const
+
inline Quat& operator -= (const Quat& rhs)
+
inline Quat operator - () const
+
float length( void ) const
+
float length2( void ) const
+
inline Quat conj( void ) const
+
inline Quat inverse( void ) const
+
void makeRot( const float angle, const float x, const float y, const float z )
+
void makeRot( const float angle, const Vec3& vec )
+
void makeRot( const Vec3& vec1, const Vec3& vec2 )
+
void getRot( float& angle, float& x, float& y, float& z ) const
+
void getRot( float& angle, Vec3& vec ) const
+
void slerp( const float t, const Quat& from, const Quat& to)
+
void set( const osg::Matrix& m )
+
void get( osg::Matrix& m ) const
+
inline friend ostream& operator << (ostream& output, const Quat& vec)
+
Alphabetic index HTML hierarchy of classes or Java
Smart pointer for handling referenced counted objects+
Smart pointer for handling referenced counted objects+
+
+
+
+
+
+
+
+
+
RP(const RP& rp)
+
~RP()
+
RP& operator = (const RP& rp)
+
Alphabetic index HTML hierarchy of classes or Java
pure virtual base class for reading and writing of non native formats.+
pure virtual base class for reading and writing of non native formats.+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
virtual const char* className()
+
virtual bool acceptsExtension(const std::string& )
+
virtual Object* readObject(const std::string& )
+
virtual Image* readImage(const std::string& )
+
virtual Node* readNode(const std::string& )
+
virtual bool writeObject(Object& , const std::string& )
+
virtual bool writeImage(Image& , const std::string& )
+
Alphabetic index HTML hierarchy of classes or Java
Base class from providing referencing counted objects+
Base class from providing referencing counted objects+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
Referenced(Referenced&)
+
Referenced& operator = (Referenced&)
+
void ref()
+
void unref()
+
int referenceCount()
+
Alphabetic index HTML hierarchy of classes or Java
Proxy class for automatic registration of reader/writers with the Registry+
Proxy class for automatic registration of reader/writers with the +Registry+
Alphabetic index HTML hierarchy of classes or Java
Proxy class for automatic registration of reader/writers with the Registry+
Proxy class for automatic registration of reader/writers with the +Registry+
Alphabetic index HTML hierarchy of classes or Java
Registry is a singleton factory which stores the Objects types available at runtime for loading, and any Object reader or writers which are linked in at runtime for reading non-native file formats.+
+Registry is a singleton factory which stores +the Objects types available at runtime for loading, +and any Object reader or writers which are linked in +at runtime for reading non-native file formats.+The RegisterObjectProxy defined in Object.h can be +used to automatically register at runtime a Object +with the Registry.
The RegisterReaderWriterProxy defined in ReaderWriter.h can +be used to automatically register at runtime a reader/writer +with the Registry.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
static Registry* instance()
+
void addPrototype(Object* obj)
+
void removePrototype(Object* obj)
+
void addReaderWriter(ReaderWriter* rw)
+
void removeReaderWriter(ReaderWriter* rw)
+
std::string createLibraryNameForFile(const std::string& fileName)
+
std::string createLibraryNameForExt(const std::string& ext)
+
bool loadLibrary(const std::string& fileName)
+
bool closeLibrary(const std::string& fileName)
+
Object* readObject(Input& fr)
+
Object* readObject(const std::string& fileName)
+
bool writeObject(Object& obj, const std::string& fileName)
+
Image* readImage(Input& fr)
+
Image* readImage(const std::string& fileName)
+
bool writeImage(Image& obj, const std::string& fileName)
+
Node* readNode(Input& fr)
+
Node* readNode(const std::string& fileName)
+
bool writeNode(Node& node, const std::string& fileName)
+
Alphabetic index HTML hierarchy of classes or Java
Basic visitor for rendering a scene.+
Basic visitor for rendering a scene. +The visitor traverses the scene graph, collecting transparent +and opaque osg::GeoSet's into a depth sorted transparent bin +and a state sorted opaque bin. The opaque bin is rendered first, +and then the transparent bin in rendered in order from the furthest +osg::GeoSet from the eye to the one nearest the eye.+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
virtual ~RenderVisitor()
+
void reset()
+
virtual void apply(Node&)
+
virtual void apply(Geode& node)
+
virtual void apply(Billboard& node)
+
virtual void apply(Group& node)
+
virtual void apply(DCS& node)
+
virtual void apply(Switch& node)
+
virtual void apply(LOD& node)
+
virtual void apply(Scene& node)
+
void setGlobalState(GeoState* global)
+
void setPerspective(float fovy, float aspect, float znear, float zfar)
+
void setLookAt(const Vec3& eye, const Vec3& center, const Vec3& upVector)
+
void setLookAt(double eyeX, double eyeY, double eyeZ, double centerX, double centerY, double centerZ, double upX, double upY, double upZ)
+
void setLODBias(float bias)
+
float getLODBias()
+
enum TransparencySortMode
+
+
+
+
+
void setTransparencySortMode(TransparencySortMode tsm)
+
enum CullingType
+
+
+
+
+
void setCullingActive(CullingType ct, bool active)
+
bool getCullingActive(CullingType ct)
+
bool calcNearFar(double& near_plane, double& far_plane)
+
void render()
+
void pushMatrix(const Matrix& matrix)
+
void popMatrix()
+
Matrix* getCurrentMatrix()
+
Matrix* getInverseCurrentMatrix()
+
const Vec3& getEyeLocal()
+
const Vec3& getCenterLocal()
+
const Vec3& getLookVectorLocal()
+
bool _viewFrustumCullingActive
+
bool _smallFeatureCullingActive
+
bool isCulled(const BoundingSphere& sp)
+
bool isCulled(const BoundingBox& bb)
+
typedef std::pair<Matrix*,GeoSet*> MatrixGeoSet
+
typedef std::vector<ViewState*> ViewStateStack
+
ViewStateStack _viewStateStack
+
ViewState* _tvs
+
ViewState* _cvs
+
typedef std::multimap<GeoState*,MatrixGeoSet> OpaqueList
+
typedef std::multimap<float,MatrixGeoSet> TransparentList
+
OpaqueList _opaqueGeoSets
+
TransparentList _transparentGeoSets
+
GeoState* _globalState
+
float _LODBias
+
float _fovy
+
float _aspect
+
float _znear
+
float _zfar
+
void calculateClippingPlanes()
+
Vec3 _frustumTop
+
Alphabetic index HTML hierarchy of classes or Java
The top level group node in a scene graph.+
The top level group node in a scene graph.+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
virtual Object* clone() const
+
virtual bool isSameKindAs(Object* obj)
+
virtual const char* className() const
+
virtual void accept(NodeVisitor& nv)
+
void setGState(osg::GeoState* gstate)
+
osg::GeoState* getGState()
+
virtual ~Scene()
+
virtual bool readLocalData(Input& fr)
+
Alphabetic index HTML hierarchy of classes or Java
Segment class for representing a line segment+
Segment class for representing a line segment+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
Seg(const Seg& seg)
+
Seg(const Vec3& s, const Vec3& e)
+
virtual ~Seg()
+
Seg& operator = (const Seg& seg)
+
void set(const Vec3& s, const Vec3& e)
+
const Vec3& start() const
+
Vec3& start()
+
const Vec3& end() const
+
Vec3& end()
+
bool intersect(const BoundingBox& bb) const
+
bool intersect(const BoundingBox& bb, float& r1, float& r2) const
+
bool intersect(const BoundingSphere& bs) const
+
bool intersect(const BoundingSphere& bs, float& r1, float& r2) const
+
bool intersect(const Vec3& v1, const Vec3& v2, const Vec3& v3, float& r)
+
void mult(const Seg& seg, const Matrix& m)
+
void mult(const Matrix& m, const Seg& seg)
+
static bool intersectAndClip(Vec3& s, Vec3& e, const BoundingBox& bb)
+
Alphabetic index HTML hierarchy of classes or Java
Sequence - Switch node which allows iterators between children.+
Sequence - Switch node which allows iterators between children.+Note: has not been implemented yet!
+
+
+
+
+
+
+
+
+
virtual Object* clone() const
+
virtual bool isSameKindAs(Object* obj)
+
virtual const char* className() const
+
Alphabetic index HTML hierarchy of classes or Java
Alphabetic index HTML hierarchy of classes or Java
Switch - Group node which allows switching between children.+
Switch - Group node which allows switching between children. +Typical uses would be for objects which might need to be rendered +differently at different times, for instance a switch could be used +to represent the different states of a traffic light.+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
virtual Object* clone() const
+
virtual bool isSameKindAs(Object* obj)
+
virtual const char* className() const
+
virtual void accept(NodeVisitor& nv)
+
virtual void traverse(NodeVisitor& nv)
+
void setVal(int val)
+
int getVal() const
+
virtual ~Switch()
+
virtual bool readLocalData(Input& fr)
+
Alphabetic index HTML hierarchy of classes or Java
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
static TexEnv* instance()
+
virtual Object* clone() const
+
virtual bool isSameKindAs(Object* obj)
+
virtual const char* className() const
+
void setMode( TexEnvMode mode )
+
void apply( void )
+
virtual ~TexEnv( void )
+
virtual bool readLocalData(Input& fr)
+
virtual bool writeLocalData(Output& fw)
+
bool matchModeStr(const char* str, TexEnvMode& mode)
+
Alphabetic index HTML hierarchy of classes or Java
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
static TexGen* instance()
+
virtual Object* clone() const
+
virtual bool isSameKindAs(Object* obj)
+
virtual const char* className() const
+
static void enable( void )
+
static void disable( void )
+
void apply( void )
+
void setMode( TexGenMode mode )
+
virtual ~TexGen( void )
+
virtual bool readLocalData(Input& fr)
+
virtual bool writeLocalData(Output& fw)
+
bool matchModeStr(const char* str, TexGenMode& mode)
+
Alphabetic index HTML hierarchy of classes or Java
+
+
+
+
+
+
+
+
+
static TexMat* instance()
+
virtual Object* clone() const
+
virtual bool isSameKindAs(Object* obj)
+
Alphabetic index HTML hierarchy of classes or Java
Texture state class which encapsulates OpenGl texture functionality+
Texture state class which encapsulates OpenGl texture functionality+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
static Texture* instance()
+
virtual Object* clone() const
+
virtual bool isSameKindAs(Object* obj)
+
virtual const char* className() const
+
void setImage(Image* image)
+
Image* getImage() const
+
enum WrapParameter
+
+
+
+
+
enum WrapMode
+
+
+
+
+
void setWrap(WrapParameter which, WrapMode wrap)
+
WrapMode getWrap(WrapParameter which) const
+
enum FilterParameter
+
+
+
+
+
enum FilterMode
+
+
+
+
+
void setFilter(FilterParameter which, FilterMode filter)
+
FilterMode getFilter(FilterParameter which) const
+
static void enable( void )
+
static void disable( void )
+
void apply( void )
+
virtual ~Texture()
+
virtual bool readLocalData(Input& fr)
+
virtual bool writeLocalData(Output& fw)
+
uint _handle
+
ref_ptr<Image> _image
+
bool matchWrapStr(const char* str, WrapMode& wrap)
+
const char* getWrapStr(WrapMode wrap)
+
bool matchFilterStr(const char* str, FilterMode& filter)
+
const char* getFilterStr(FilterMode filter)
+
WrapMode _wrap_s
+
Alphabetic index HTML hierarchy of classes or Java
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
~Timer( void )
+
inline Timer_t tick( void )
+
pragmaoptimize("", on)(x) (".byte 0x0f, 0x31" : "=A" (x))( void )
+
ifdefinline __sgi Timer_t tick( void )
+
double delta_s( Timer_t t1, Timer_t t2 )
+
double delta_m( Timer_t t1, Timer_t t2 )
+
Alphabetic index HTML hierarchy of classes or Java
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
DST_COLOR
+
ONE
+
ONE_MINUS_DST_ALPHA
+
ONE_MINUS_DST_COLOR
+
ONE_MINUS_SRC_ALPHA
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
static Transparency* instance()
+
virtual Object* clone() const
+
virtual bool isSameKindAs(Object* obj)
+
virtual const char* className() const
+
void setFunction( int source, int destination )
+
static void enable( void )
+
static void disable( void )
+
Alphabetic index HTML hierarchy of classes or Java
Convience functor for unreferencing objects+ +
Convience functor for unreferencing objects+
Alphabetic index HTML hierarchy of classes or Java
General purpose float pair, uses include representation of texture coordinates.+
General purpose float pair, uses include representation of +texture coordinates. +No support yet added for float * Vec2 - is it necessary? +Need to define a non-member non-friend operator* etc. +BTW: Vec2 * float is okay+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
Vec2(float x, float y)
+
float _v[2]
+
bool operator == (const Vec2& v) const
+
inline float* ptr()
+
inline const float* ptr() const
+
inline void set( float x, float y )
+
inline float& operator [] (int i)
+
inline float operator [] (int i) const
+
inline float& x()
+
inline float& y()
+
inline float x() const
+
inline float y() const
+
inline float operator * (const Vec2& rhs) const
+
inline Vec2 operator * (const float& rhs) const
+
inline Vec2& operator *= (const float& rhs)
+
inline Vec2 operator / (const float& rhs) const
+
inline Vec2& operator /= (const float& rhs)
+
inline Vec2 operator + (const Vec2& rhs) const
+
inline Vec2& operator += (const Vec2& rhs)
+
inline Vec2 operator - (const Vec2& rhs) const
+
inline Vec2& operator -= (const Vec2& rhs)
+
inline Vec2 operator - () const
+
inline float length() const
+
inline float length2( void ) const
+
inline float normalize()
+
inline friend ostream& operator << (ostream& output, const Vec2& vec)
+
Alphabetic index HTML hierarchy of classes or Java
General purpose float triple for use as vertices, vectors and normals.+
General purpose float triple for use as vertices, vectors and normals. +Provides general maths operations from addition through to cross products. +No support yet added for float * Vec3 - is it necessary? +Need to define a non-member non-friend operator* etc. +Vec3 * float is okay+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
Vec3(float x, float y, float z)
+
float _v[3]
+
bool operator == (const Vec3& v) const
+
inline float* ptr()
+
inline const float* ptr() const
+
inline void set( float x, float y, float z)
+
inline float& operator [] (int i)
+
inline float operator [] (int i) const
+
inline float& x()
+
inline float& y()
+
inline float& z()
+
inline float x() const
+
inline float y() const
+
inline float z() const
+
inline float operator * (const Vec3& rhs) const
+
inline Vec3 operator ^ (const Vec3& rhs) const
+
inline Vec3 operator * (const float& rhs) const
+
inline Vec3& operator *= (const float& rhs)
+
inline Vec3 operator / (const float& rhs) const
+
inline Vec3& operator /= (const float& rhs)
+
inline Vec3 operator + (const Vec3& rhs) const
+
inline Vec3& operator += (const Vec3& rhs)
+
inline Vec3 operator - (const Vec3& rhs) const
+
inline Vec3& operator -= (const Vec3& rhs)
+
inline Vec3 operator - () const
+
inline float length( void ) const
+
inline float length2( void ) const
+
inline float normalize()
+
inline friend ostream& operator << (ostream& output, const Vec3& vec)
+
Alphabetic index HTML hierarchy of classes or Java
General purpose float quad, uses include representation of colour coordinates.+
General purpose float quad, uses include representation +of colour coordinates. +No support yet added for float * Vec4 - is it necessary? +Need to define a non-member non-friend operator* etc. +Vec4 * float is okay+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
Vec4(float x, float y, float z, float w)
+
float _v[4]
+
bool operator == (const Vec4& v) const
+
inline float* ptr()
+
inline const float* ptr() const
+
inline void set( float x, float y, float z, float w)
+
inline float& operator [] (int i)
+
inline float operator [] (int i) const
+
inline float& x()
+
inline float& y()
+
inline float& z()
+
inline float& w()
+
inline float x() const
+
inline float y() const
+
inline float z() const
+
inline float w() const
+
inline float operator * (const Vec4& rhs) const
+
inline Vec4 operator * (const float& rhs) const
+
inline Vec4& operator *= (const float& rhs)
+
inline Vec4 operator / (const float& rhs) const
+
inline Vec4& operator /= (const float& rhs)
+
inline Vec4 operator + (const Vec4& rhs) const
+
inline Vec4& operator += (const Vec4& rhs)
+
inline Vec4 operator - (const Vec4& rhs) const
+
inline Vec4& operator -= (const Vec4& rhs)
+
inline Vec4 operator - () const
+
inline float length( void ) const
+
inline float length2( void ) const
+
inline float normalize()
+
inline friend ostream& operator << (ostream& output, const Vec4& vec)
+
Alphabetic index HTML hierarchy of classes or Java
Container class for encapsulating the viewing state in local coordinates, during the cull traversal+
Container class for encapsulating the viewing state in local +coordinates, during the cull traversal+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
Matrix* _matrix
+
Matrix* _inverse
+
Vec3 _eyePoint
+
Vec3 _centerPoint
+
Vec3 _lookVector
+
Vec3 _upVector
+
Vec3 _frustumTopNormal
+
Vec3 _frustumBottomNormal
+
Vec3 _frustumLeftNormal
+
Vec3 _frustumRightNormal
+
float _ratio
+
bool _viewFrustumCullingActive
+
bool _smallFeatureCullingActive
+
bool isCulled(const BoundingSphere& sp)
+
Alphabetic index HTML hierarchy of classes or Java
Convinience function to be used by images loaders to generate a valid geode to return for readNode().+ + +
Convinience function to be used by images loaders to generate a valid geode to return for readNode(). +Use the specified s and t values scale the dimensions of the image.+
Alphabetic index HTML hierarchy of classes or Java
Convinience function to be used by images loaders to generate a valid geode to return for readNode().+ + +
Convinience function to be used by images loaders to generate a valid geode to return for readNode(). +Use the images s and t values scale the dimensions of the image.+
Alphabetic index HTML hierarchy of classes or Java
Template function for iterating through a GeoSet operating on triangles with templated functor.+ + +
Template function for iterating through a GeoSet operating on triangles +with templated functor. Function automatically decomposes quads and polygons +into sub triangles which are passed onto functor.+
Alphabetic index HTML hierarchy of classes or Java
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
SG_EXPORT extern std::string getFileExtension(const std::string& filename)
+
SG_EXPORT extern std::string getLowerCaseFileExtension(const std::string& filename)
+
SG_EXPORT extern std::string getSimpleFileName(const std::string& fileName)
+
SG_EXPORT extern std::string getStrippedName(const std::string& fileName)
+
inline Vec3 Matrix::operator * (const Vec3& v) const
+
inline Vec3 operator * (const Vec3& v, const Matrix& m)
+
extern NotifySeverity g_NotifyLevel
+
extern ofstream* g_absorbStreamPtr
+
SG_EXPORT extern void setNotifyLevel(NotifySeverity severity)
+
SG_EXPORT extern int getNotifyLevel()
+
inline ostream& notify(NotifySeverity severity=INFO)
+
SG_EXPORT extern ostream& notify(NotifySeverity severity=INFO)
+
static NotifyInit niftyNotifyInit
+
SG_EXPORT extern void Init( void )
+
SG_EXPORT extern void SetFilePath( const char *_path )
+
SG_EXPORT extern char* FindFile( const char *file )
+
SG_EXPORT extern char* findDSO( const char *name )
+
template<class T> bool writeArrayBlock(Output& fw, T* start, T* finish)
+
SG_EXPORT extern Object* loadObjectFile(const char *name)
+
SG_EXPORT extern Image* loadImageFile(const char *name)
+
SG_EXPORT extern Node* loadNodeFile(const char *name)
+
SG_EXPORT extern bool saveObjectFile(Object& object, const char *name)
+
SG_EXPORT extern bool saveImageFile(Image& image, const char *name)
+
SG_EXPORT extern bool saveNodeFile(Node& node, const char *name)
+
typedef __int64 Timer_t
+
typedef unsigned long long Timer_t
+
typedef unsigned int uint
+
typedef unsigned short ushort
+
typedef unsigned char uchar
+
typedef uchar ubyte
+
#define M_E
+
#define M_LOG2E
+
#define M_LOG10E
+
#define M_LN2
+
#define M_LN10
+
#define M_PI
+
#define M_PI_2
+
#define M_PI_4
+
#define M_1_PI
+
Alphabetic index HTML hierarchy of classes or Java
getLibraryName_osg() returns the library name in human friendly form+ + +
+getLibraryName_osg() returns the library name in human friendly form+
Alphabetic index HTML hierarchy of classes or Java
getVersion_osg() returns the library version number.+ + +
+getVersion_osg() returns the library version number. +Numbering conventon : osg_src-0.8-31 will return 0.8.31 from getVersion_osg.+This C function can be also used to check for the existance of the OpenSceneGraph +library using autoconf and its m4 macro AC_CHECK_LIB.
Here is the code to add to your configure.in: +\verbatim +# +# Check for the OpenSceneGraph (OSG) library +# +AC_CHECK_LIB(osg, osgGetVersion, , +[AC_MSG_ERROR(OpenSceneGraph library not found. See http://www.openscenegraph.org)],) +\endverbatim
Alphabetic index HTML hierarchy of classes or Java
Smart pointer for handling referenced counted objects+
Smart pointer for handling referenced counted objects+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
ref_ptr(T* t)
+
ref_ptr(const ref_ptr& rp)
+
~ref_ptr()
+
ref_ptr& operator = (const ref_ptr& rp)
+
ref_ptr& operator = (T* ptr)
+
bool operator == (const ref_ptr& rp) const
+
bool operator == (const T* ptr) const
+
bool operator != (const ref_ptr& rp) const
+
bool operator != (const T* ptr) const
+
T& operator*() const
+
Alphabetic index HTML hierarchy of classes or Java
Class for adapting GLUT events so that they can be used as input to osgUtil::CameraManipulators+
Class for adapting GLUT events so that they can be used as input to osgUtil::CameraManipulators+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
virtual ~GLUTEventAdapter()
+
virtual EventType getEventType() const
+
virtual int getKey() const
+
virtual int getButton() const
+
virtual int getXmin() const
+
virtual int getXmax() const
+
virtual int getYmin() const
+
virtual int getYmax() const
+
virtual int getX() const
+
virtual int getY() const
+
virtual unsigned int getButtonMask() const
+
virtual float time() const
+
static void setWindowSize(int Xmin, int Ymin, int Xmax, int Ymax)
+
static void setButtonMask(unsigned int buttonMask)
+
void adaptResize(float t, int Xmin, int Ymin, int Xmax, int Ymax)
+
void adaptMouseMotion(float t, int x, int y)
+
void adaptMousePassiveMotion(float t, int x, int y)
+
void adaptMouse(float t, int button, int state, int x, int y)
+
void adaptKeyboard(float t, unsigned char key, int x, int y )
+
void adaptFrame(float t)
+
void copyStaticVariables()
+
EventType _eventType
+
int _key
+
int _button
+
int _Xmin
+
int _Xmax
+
int _Ymin
+
int _Ymax
+
int _mx
+
int _my
+
unsigned int _buttonMask
+
float _time
+
static unsigned int _s_accumulatedButtonMask
+
static int _s_Xmin
+
static int _s_Xmax
+
Alphabetic index HTML hierarchy of classes or Java
A basic viewer base class which provides a window, simple keyboard and mouse interaction.+
A basic viewer base class which provides a window, simple keyboard and mouse interaction. +Please note, this viewer class has been developed via a rather haphazzard +path and *needs* a total rewrite. It currently surfices for osg demo's +but shouldn't be viewed as the be all or end of osg viewer classes. +Someone please rewrite it :-)+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
virtual ~Viewer()
+
virtual bool init( osg::Node* )
+
virtual bool run()
+
virtual bool update()
+
virtual bool traverse()
+
virtual bool draw()
+
long initClock()
+
float clockSeconds()
+
osg::Timer_t updateFrameTick()
+
float frameSeconds()
+
float frameRate()
+
void help(ostream& fout)
+
void registerCameraManipulator(osgUtil::CameraManipulator* cm)
+
void selectCameraManipulator(unsigned int pos)
+
virtual void needRedraw(bool )
+
virtual void needContinuousUpdate(bool )
+
virtual void needWarpPointer(int x, int y)
+
static void displayCB()
+
static void reshapeCB(GLint w, GLint h)
+
static void visibilityCB(int state)
+
static void mouseMotionCB(int x, int y)
+
static void mousePassiveMotionCB(int x, int y)
+
static void mouseCB(int button, int state, int x, int y)
+
static void keyboardCB(unsigned char key, int x, int y )
+
virtual void display()
+
virtual void reshape(GLint w, GLint h)
+
virtual void visibility(int state)
+
virtual void mouseMotion(int x, int y)
+
virtual void mousePassiveMotion(int x, int y)
+
virtual void mouse(int button, int state, int x, int y)
+
virtual void keyboard(unsigned char key, int x, int y)
+
static Viewer* s_theViewer
+
osg::ref_ptr<osgUtil::SceneView> _sceneView
+
typedef std::vector<osg::ref_ptr<osgUtil::CameraManipulator> > CameraManipList
+
osg::ref_ptr<osgUtil::CameraManipulator> _cameraManipulator
+
CameraManipList _cameraManipList
+
std::string _saveFileName
+
int ww
+
int wh
+
ifdef SGV_USE_RTFS unsigned int frame_rate
+
RTfs* fs
+
bool _viewFrustumCullingActive
+
bool _smallFeatureCullingActive
+
int mx
+
int my
+
int mbutton
+
int polymode
+
int texture
+
int backface
+
int lighting
+
int flat_shade
+
int _two_sided_lighting
+
bool fullscreen
+
int _saved_ww
+
int _saved_wh
+
bool _printStats
+
bool _useDisplayLists
+
osg::Timer _timer
+
osg::Timer_t _tickRatePerSecond
+
osg::Timer_t _initialTick
+
osg::Timer_t _lastFrameTick
+
osg::Timer_t _frameTick
+
Alphabetic index HTML hierarchy of classes or Java
Alphabetic index HTML hierarchy of classes or Java
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
~Camera()
+
void draw() const
+
void setView(osg::Vec3 eyePoint, osg::Vec3 lookPoint, osg::Vec3 upVector)
+
const osg::Vec3& getEyePoint() const
+
const osg::Vec3& getLookPoint() const
+
const osg::Vec3& getUpVector() const
+
void setNearPlane(double nearPlane)
+
double getNearPlane() const
+
void setFarPlane(double farPlane)
+
double getFarPlane() const
+
void home()
+
Alphabetic index HTML hierarchy of classes or Java
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
virtual ~CameraManipulator()
+
virtual void setCamera(osg::Camera*)
+
virtual osg::Camera* getCamera() const
+
virtual void setNode(osg::Node*)
+
virtual osg::Node* getNode() const
+
virtual void home(GUIEventAdapter&, GUIActionAdapter&)
+
virtual void init(GUIEventAdapter&, GUIActionAdapter&)
+
virtual bool update(GUIEventAdapter& ea, GUIActionAdapter& us)
+
Alphabetic index HTML hierarchy of classes or Java
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
~CameraTrackballManipulator()
+
void setCamera(osg::Camera *)
+
osg::Camera* getCamera() const
+
void initialise(int x, int y)
+
enum MovementType
+
+
+
+
+
bool update(MovementType movementType, int x, int y)
+
void update()
+
MovementType getLastMovementType() const
+
Alphabetic index HTML hierarchy of classes or Java
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
~CameraZSpindleManipulator()
+
void setCamera(osg::Camera *)
+
osg::Camera* getCamera() const
+
void initialise(int x, int y)
+
enum MovementType
+
+
+
+
+
bool update(MovementType movementType, int x, int y)
+
void update()
+
MovementType getLastMovementType() const
+
Alphabetic index HTML hierarchy of classes or Java
Visitor for traversing scene compiling OpenGL Display list from osg::GeoSets+
Visitor for traversing scene compiling OpenGL Display list from osg::GeoSets+
Alphabetic index HTML hierarchy of classes or Java
Visitor for traversing scene set each osg::GeoSet's _useDisplayList flag, or immediately compiling osg::GeoSet's OpenGL Display lists.+
Visitor for traversing scene set each osg::GeoSet's _useDisplayList flag, or +immediately compiling osg::GeoSet's OpenGL Display lists. The mode of operation +of the vistor is controlled by setting the DisplayListMode either on visitor +constructor or via the setDisplayListMode() method. DisplayListMode options are: +_displayListMode == SWITCH_ON_AND_COMPILE_DISPLAY_LISTS cals gset->compile() on +all Geode childern. Note, the visitor must only be used within a valid +OpenGL context as compile uses OpenGL calls. +_displayListMode == SWITCH_ON_DISPLAY_LISTS sets the Geode's children with +gset->setUseDisplayList(true), this method does not directly create display list, +or uses OpenGL calls so if safe to use before a valid OpenGL context has been set up. +On the next redraw of the scene, the gset's draw methods will be called +which then will respond to their _useDisplayList being set by creating display lists +automatically. +_displayListMode == SWITCH_OFF_DISPLAY_LISTS sets the Geode's children with +gset->setUseDisplayList(false), this method does not directly create display list, +or uses OpenGL calls so if safe to use before a valid OpenGL context has been set up.+
+
+
+
+
+
+
+
+
+
+
+
+
void setDisplayListMode(DisplayListMode mode)
+
DisplayListMode getDisplayListMode() const
+
virtual void apply(osg::Node& node)
+
virtual void apply(osg::Geode& node)
+
Alphabetic index HTML hierarchy of classes or Java
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
virtual ~DriveManipulator()
+
virtual void setNode(osg::Node*)
+
virtual osg::Node* getNode() const
+
virtual void home(GUIEventAdapter& ea, GUIActionAdapter& us)
+
virtual void init(GUIEventAdapter& ea, GUIActionAdapter& us)
+
virtual bool update(GUIEventAdapter& ea, GUIActionAdapter& us)
+
+
Alphabetic index HTML hierarchy of classes or Java
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
virtual ~FlightManipulator()
+
virtual void setNode(osg::Node*)
+
virtual osg::Node* getNode() const
+
virtual void home(GUIEventAdapter& ea, GUIActionAdapter& us)
+
virtual void init(GUIEventAdapter& ea, GUIActionAdapter& us)
+
virtual bool update(GUIEventAdapter& ea, GUIActionAdapter& us)
+
enum YawControlMode
+
+
+
+
+
void setYawControlMode(YawControlMode ycm)
+
Alphabetic index HTML hierarchy of classes or Java
Pure virtual base class for adapting the GUI actions for use in CameraManipulators+
Pure virtual base class for adapting the GUI actions for use in CameraManipulators+
Alphabetic index HTML hierarchy of classes or Java
Pure virtual base class for adapting platform specfic events into generic keyboard and mouse events.+
Pure virtual base class for adapting platform specfic events into +generic keyboard and mouse events.+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
enum MouseButtonMask
+
+
+
+
+
enum EventType
+
+
+
+
+
virtual EventType getEventType() const
+
virtual int getKey() const
+
virtual int getButton() const
+
virtual int getXmin() const
+
virtual int getXmax() const
+
virtual int getYmin() const
+
virtual int getYmax() const
+
virtual int getX() const
+
virtual int getY() const
+
virtual unsigned int getButtonMask() const
+
virtual float time() const
+
virtual ~GUIEventAdapter()
+
Alphabetic index HTML hierarchy of classes or Java
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
enum MouseButtonMask
+
+
+
+
+
enum EventType
+
+
+
+
+
EventType _eventType
+
int _key_or_button_pressed
+
int _x
+
int _y
+
unsigned int _buttonMask
+
Alphabetic index HTML hierarchy of classes or Java
Class for passing back the update state from a camera maniupulator back to the caller, on the handling of an event.+
Class for passing back the update state from a camera maniupulator +back to the caller, on the handling of an event.+
Alphabetic index HTML hierarchy of classes or Java
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
Hit(const Hit& hit)
+
~Hit()
+
Hit& operator = (const Hit& hit)
+
typedef std::vector<int> VecIndexList
+
bool operator < (const Hit& hit) const
+
float _ratio
+
osg::Seg* _originalSeg
+
osg::Seg* _localSeg
+
osg::NodePath _nodePath
+
osg::Geode* _geode
+
osg::GeoSet* _geoset
+
osg::Matrix* _matrix
+
VecIndexList _vecIndexList
+
Alphabetic index HTML hierarchy of classes or Java
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
osg::Matrix* _matrix
+
osg::Matrix* _inverse
+
typedef std::vector< std::pair<osg::Seg*,osg::Seg*> > SegList
+
SegList _segList
+
typedef unsigned int SegmentMask
+
typedef std::vector<SegmentMask> SegmentMaskStack
+
SegmentMaskStack _segmentMaskStack
+
bool isCulled(const osg::BoundingSphere& bs, SegmentMask& segMaskOut)
+
bool isCulled(const osg::BoundingBox& bb, SegmentMask& segMaskOut)
+
Alphabetic index HTML hierarchy of classes or Java
Basic visitor for ray based collisions of a scene.+
Basic visitor for ray based collisions of a scene. +Note, still in development, current version has not +pratical functionality!+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
virtual ~IntersectVisitor()
+
void reset()
+
void addSeg(osg::Seg* seg)
+
enum HitReportingMode
+
+
+
+
+
void setHitReportingMode(HitReportingMode hrm)
+
HitReportingMode getHitReportingMode()
+
typedef std::vector<Hit> HitList
+
typedef std::map<osg::Seg*,HitList > SegHitListMap
+
HitList& getHitList(osg::Seg* seg)
+
int getNumHits(osg::Seg* seg)
+
bool hits()
+
virtual void apply(osg::Node&)
+
virtual void apply(osg::Geode& node)
+
virtual void apply(osg::Billboard& node)
+
virtual void apply(osg::Group& node)
+
virtual void apply(osg::DCS& node)
+
virtual void apply(osg::Switch& node)
+
virtual void apply(osg::LOD& node)
+
virtual void apply(osg::Scene& node)
+
bool intersect(osg::GeoSet& gset)
+
void pushMatrix(const osg::Matrix& matrix)
+
void popMatrix()
+
bool enterNode(osg::Node& node)
+
void leaveNode()
+
typedef std::vector<IntersectState*> IntersectStateStack
+
IntersectStateStack _intersectStateStack
+
osg::NodePath _nodePath
+
Alphabetic index HTML hierarchy of classes or Java
Basic NodeVisitor implementation for rendering a scene.+
+Basic NodeVisitor implementation for rendering a scene. +This visitor traverses the scene graph, collecting transparent and +opaque osg::GeoSets into a depth sorted transparent bin and a state +sorted opaque bin. The opaque bin is rendered first, and then the +transparent bin in rendered in order from the furthest osg::GeoSet +from the eye to the one nearest the eye.+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
virtual ~RenderVisitor()
+
void reset()
+
virtual void apply(osg::Node&)
+
virtual void apply(osg::Geode& node)
+
virtual void apply(osg::Billboard& node)
+
virtual void apply(osg::LightSource& node)
+
virtual void apply(osg::Group& node)
+
virtual void apply(osg::DCS& node)
+
virtual void apply(osg::Switch& node)
+
virtual void apply(osg::LOD& node)
+
virtual void apply(osg::Scene& node)
+
void setGlobalState(osg::GeoState* global)
+
void setPerspective(const osg::Camera& camera)
+
void setPerspective(float fovy, float aspect, float znear, float zfar)
+
void setLookAt(const osg::Camera& camera)
+
void setLookAt(const osg::Vec3& eye, const osg::Vec3& center, const osg::Vec3& upVector)
+
void setLookAt(double eyeX, double eyeY, double eyeZ, double centerX, double centerY, double centerZ, double upX, double upY, double upZ)
+
void setLODBias(float bias)
+
float getLODBias()
+
enum TransparencySortMode
+
+
+
+
+
void setTransparencySortMode(TransparencySortMode tsm)
+
enum CullingType
+
+
+
+
+
void setCullingActive(CullingType ct, bool active)
+
active - true enables the culling type, false disables.
bool getCullingActive(CullingType ct)
+
bool calcNearFar(double& near_plane, double& far_plane)
+
far_plane - reference to a variable that can store the
+far plane result.
+@result true, if near_plane and far_plane contain valid values,
+false otherwise.
void render()
+
void pushMatrix(const osg::Matrix& matrix)
+
void popMatrix()
+
osg::Matrix* getCurrentMatrix()
+
osg::Matrix* getInverseCurrentMatrix()
+
const osg::Vec3& getEyeLocal()
+
const osg::Vec3& getCenterLocal()
+
const osg::Vec3& getLookVectorLocal()
+
bool _viewFrustumCullingActive
+
bool _smallFeatureCullingActive
+
bool isCulled(const osg::BoundingSphere& sp)
+
bool isCulled(const osg::BoundingBox& bb)
+
typedef std::pair<osg::Matrix*,osg::GeoSet*> MatrixGeoSet
+
typedef std::vector<ViewState*> ViewStateStack
+
ViewStateStack _viewStateStack
+
ViewState* _tvs
+
ViewState* _cvs
+
typedef std::multimap<osg::GeoState*,MatrixGeoSet> OpaqueList
+
typedef std::multimap<float,MatrixGeoSet> TransparentList
+
typedef std::map<osg::Matrix*,osg::Light*> LightList
+
OpaqueList _opaqueGeoSets
+
TransparentList _transparentGeoSets
+
LightList _lights
+
osg::GeoState* _globalState
+
float _LODBias
+
float _fovy
+
float _aspect
+
float _znear
+
float _zfar
+
void calculateClippingPlanes()
+
osg::Vec3 _frustumTop
+
osg::Vec3 _frustumBottom
+
osg::Vec3 _frustumLeft
+
Alphabetic index HTML hierarchy of classes or Java
SceneView is literaly a view of a scene, encapsulating the camera, global state, lights and the scene itself.+
+SceneView is literaly a view of a scene, encapsulating the +camera, global state, lights and the scene itself. Provides +methods for setting up the view and rendering it.+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
void setSceneData(osg::Node* node)
+
osg::Node* getSceneData()
+
void setViewport(int x, int y, int width, int height)
+
void getViewport(int& x, int& y, int& width, int& height)
+
void setDefaults()
+
void setBackgroundColor(const osg::Vec4& color)
+
const osg::Vec4& getBackgroundColor() const
+
void setGlobalState(osg::GeoState* state)
+
osg::GeoState* getGlobalState() const
+
enum LightingMode
+
+
+
+
+
void setLightingMode(LightingMode mode)
+
LightingMode getLightingMode() const
+
void setLight(osg::Light* light)
+
osg::Light* getLight() const
+
void setCamera(osg::Camera* camera)
+
osg::Camera* getCamera() const
+
void setRenderVisitor(osgUtil::RenderVisitor* rv)
+
osgUtil::RenderVisitor* getRenderVisitor() const
+
void setLODBias(float bias)
+
float getLODBias() const
+
void setCalcNearFar(bool calc)
+
bool getCalcNearFar()
+
bool projectWindowIntoObject(const osg::Vec3& window, osg::Vec3& object) const
+
bool projectWindowXYIntoObject(int x, int y, osg::Vec3& near_point, osg::Vec3& far_point) const
+
bool projectObjectIntoWindow(const osg::Vec3& object, osg::Vec3& window) const
+
virtual void cull()
+
virtual void draw()
+
virtual ~SceneView()
+
osg::ref_ptr<osg::Node> _sceneData
+
osg::ref_ptr<osg::GeoState> _globalState
+
osg::ref_ptr<osg::Light> _light
+
osg::ref_ptr<osg::Camera> _camera
+
osg::ref_ptr<osgUtil::RenderVisitor> _renderVisitor
+
bool _need_compile
+
bool _calc_nearfar
+
osg::Vec4 _backgroundColor
+
double _near_plane
+
double _far_plane
+
float _lodBias
+
Alphabetic index HTML hierarchy of classes or Java
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
virtual ~TrackballManipulator()
+
virtual void setNode(osg::Node*)
+
virtual osg::Node* getNode() const
+
virtual void home(GUIEventAdapter& ea, GUIActionAdapter& us)
+
virtual void init(GUIEventAdapter& ea, GUIActionAdapter& us)
+
virtual bool update(GUIEventAdapter& ea, GUIActionAdapter& us)
+
Alphabetic index HTML hierarchy of classes or Java
Container class for encapsulating the viewing state in local coordinates, during the cull traversal+
Container class for encapsulating the viewing state in local +coordinates, during the cull traversal+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
osg::Matrix* _matrix
+
osg::Matrix* _inverse
+
osg::Vec3 _eyePoint
+
osg::Vec3 _centerPoint
+
osg::Vec3 _lookVector
+
osg::Vec3 _upVector
+
osg::Vec3 _frustumTopNormal
+
osg::Vec3 _frustumBottomNormal
+
osg::Vec3 _frustumLeftNormal
+
osg::Vec3 _frustumRightNormal
+
float _ratio
+
bool _viewFrustumCullingActive
+
bool _smallFeatureCullingActive
+
bool isCulled(const osg::BoundingSphere& sp)
+
Alphabetic index HTML hierarchy of classes or Java
Alphabetic index HTML hierarchy of classes or Java
getLibraryName_osgUtil() returns the library name in human friendly form+ + +
+getLibraryName_osgUtil() returns the library name in human friendly form+
Alphabetic index HTML hierarchy of classes or Java
getVersion_osgUtil() returns the library version number.+ + +
+getVersion_osgUtil() returns the library version number. +Numbering conventon : osg_src-0.8-31 will return 0.8.31 from getVersion_osgUtil.+This C function can be also used to check for the existance of the OpenSceneGraph +library using autoconf and its m4 macro AC_CHECK_LIB.
Here is the code to add to your configure.in: +\verbatim +# +# Check for the OpenSceneGraph (OSG) utility library +# +AC_CHECK_LIB(osg, osgUtilGetVersion, , +[AC_MSG_ERROR(OpenSceneGraph utility library not found. See http://www.openscenegraph.org)],) +\endverbatim
Alphabetic index HTML hierarchy of classes or Java