15#ifndef _OSG_ANTISQUISH_
16#define _OSG_ANTISQUISH_ 1
21#include <OpenThreads/Mutex>
42 virtual const char*
libraryName()
const {
return "osgManipulator"; }
44 virtual const char*
className()
const {
return "AntiSquish"; }
Matrixd Matrix
Definition Matrix:27
The osgManipulator library is a NodeKit that extends the core scene graph to support 3D interactive m...
Definition AntiSquish:23
Copy Op(erator) used to control whether shallow or deep copy is used during copy construction and clo...
Definition CopyOp:41
@ SHALLOW_COPY
Definition CopyOp:47
Visitor for type safe operations on osg::Nodes.
Definition NodeVisitor:82
Base class/standard interface for objects which require IO support, cloning and reference counting.
Definition Object:61
A Transform is a group node for which all children are transformed by a 4x4 matrix.
Definition Transform:75
General purpose double triple for use as vertices, vectors and normals.
Definition Vec3d:30
virtual osg::Object * clone(const osg::CopyOp ©op) const
return a clone of a node, with Object* return type.
Definition AntiSquish:38
osg::Vec3d _position
Definition AntiSquish:77
AntiSquish(const osg::Vec3d &pivot, const osg::Vec3d &position)
bool computeUnSquishedMatrix(osg::Matrix &) const
osg::Matrix _cacheLocalToWorld
Definition AntiSquish:82
void setPosition(const osg::Vec3d &pos)
Definition AntiSquish:56
OpenThreads::Mutex _cacheLock
Definition AntiSquish:80
virtual osg::Object * cloneType() const
clone an object of the same type as the node.
Definition AntiSquish:36
bool computeWorldToLocalMatrix(osg::Matrix &matrix, osg::NodeVisitor *) const
void setPivot(const osg::Vec3d &pvt)
Definition AntiSquish:47
const osg::Vec3d & getPosition() const
Definition AntiSquish:63
AntiSquish(const AntiSquish &pat, const osg::CopyOp ©op=osg::CopyOp::SHALLOW_COPY)
osg::Vec3d _pivot
Definition AntiSquish:74
virtual bool isSameKindAs(const osg::Object *obj) const
return true if this and obj are of the same kind of object.
Definition AntiSquish:40
bool _usePivot
Definition AntiSquish:75
virtual const char * libraryName() const
return the name of the node's library.
Definition AntiSquish:42
virtual const char * className() const
return the name of the node's class type.
Definition AntiSquish:44
osg::Matrix _cache
Definition AntiSquish:83
const osg::Vec3d & getPivot() const
Definition AntiSquish:54
bool _cacheDirty
Definition AntiSquish:81
bool _usePosition
Definition AntiSquish:78
bool computeLocalToWorldMatrix(osg::Matrix &matrix, osg::NodeVisitor *) const
AntiSquish(const osg::Vec3d &pivot)
#define NULL
Definition Export:55
#define OSGMANIPULATOR_EXPORT
Definition Export:27