17 namespace osg {
class Geometry;
class Geode;
class Switch;
class PrimitiveSet; }
23 class ForegroundLifter;
28 class TextureChannels;
32 #undef mDeclSetGetItem 33 #define mDeclSetGetItem( ownclass, clssname, variable ) \ 35 clssname* gt##clssname() const; \ 37 inline clssname* get##clssname() { return gt##clssname(); } \ 38 inline const clssname* get##clssname() const { return gt##clssname(); } \ 39 void set##clssname(clssname*) 48 void setMaterialBinding(
int );
52 int getMaterialBinding()
const;
55 void enableRenderLighting(
bool);
67 static const char* sKeyOnOff();
68 static const char* sKeyTexture();
69 static const char* sKeyMaterial();
75 class TextureCallbackHandler;
76 class NodeCallbackHandler;
83 void setPrimitiveType(
Geometry::PrimitiveSet::PrimitiveType);
99 virtual void setDisplayTransformation(
const mVisTrans* );
103 const mVisTrans* getDisplayTransformation()
const;
106 void dirtyCoordinates();
110 void removeAllPrimitiveSets();
111 int nrPrimitiveSets()
const;
118 { usecoordinateschangedcb_ = yn; }
119 void useOsgAutoNormalComputation(
bool);
121 {
return useosgsmoothnormal_; }
122 Coord3f getOsgNormal(
int)
const;
125 BIND_PER_PRIMITIVE, BIND_PER_VERTEX};
127 int getNormalBindType();
130 void useVertexBufferRender(
bool);
135 const unsigned char* getTextureData(
int&,
int&,
int&)
const;
136 void forceRedraw(
bool=
true);
145 virtual void addPrimitiveSetToScene(osg::PrimitiveSet*);
146 virtual void removePrimitiveSetFromScene(
const osg::PrimitiveSet*);
148 void setUpdateVar(
bool& var,
bool yn);
183 #undef mDeclSetGetItem Definition: visobject.h:32
Definition: visshape.h:124
#define mExpClass(module)
Definition: commondefs.h:157
Inherit from this class to be able to send and/or receive CallBacks.
Definition: callback.h:182
RenderMode
Base class for all objects that are visual on the scene.
Definition: visobject.h:29
Material * material_
Definition: visshape.h:65
Definition: vistexturecoords.h:25
ObjectSet< Geometry::PrimitiveSet > primitivesets_
Definition: visshape.h:179
Definition: indexedshape.h:27
A lock of a type that (hopefully) suits your needs. To use it, you need the Locker class...
Definition: threadlock.h:51
Definition: vistexturechannels.h:46
osg::Geometry * osggeom_
Definition: visshape.h:160
void enableCoordinatesChangedCB(bool yn)
Definition: visshape.h:117
Threads::Lock redrawlock_
Definition: visshape.h:171
void usePar(const IOPar &iop, ODPolygon< T > &poly, const char *inpkey)
Definition: polygon.h:200
virtual void setLineStyle(const OD::LineStyle &)
Definition: visshape.h:92
bool isredrawing_
Definition: visshape.h:172
TextureCoords * texturecoords_
Definition: visshape.h:155
bool useosgsmoothnormal_
Definition: visshape.h:162
NodeCallbackHandler * nodecallbackhandler_
Definition: visshape.h:169
bool usecoordinateschangedcb_
Definition: visshape.h:163
BindType
Definition: visshape.h:123
BindType normalbindtype_
Definition: visshape.h:166
3D point or vector
Definition: commontypes.h:57
BindType colorbindtype_
Definition: visshape.h:165
Generalized set of parameters of the keyword-value type.
Definition: iopar.h:53
static VertexShape * create()
Definition: visshape.h:80
Definition: visnormals.h:29
RefMan< TextureChannels > channels_
Definition: visshape.h:168
Normals * normals_
Definition: visshape.h:153
#define mVisTrans
Definition: visdata.h:25
bool needstextureupdate_
Will trigger redraw request if necessary.
Definition: visshape.h:151
osg::Node * node_
Definition: visshape.h:157
Geometry::PrimitiveSet::PrimitiveType primitivetype_
Definition: visshape.h:174
Definition: vismaterial.h:36
osg::Geode * geode_
Definition: visshape.h:159
Coordinates * coords_
Definition: visshape.h:154
virtual void touchPrimitiveSet(int)
Definition: visshape.h:112
void fillPar(IOPar &iop, const ODPolygon< T > &poly, const char *inpkey)
Definition: polygon.h:187
A set of coordinates. The coordinates will be transformed by the transformation before given to Coin...
Definition: viscoord.h:45
Definition: visannot.h:40
TextureCallbackHandler * texturecallbackhandler_
Definition: visshape.h:170
Open Scene Graph.
Definition: visannot.h:26
static int cPerVertexMaterialBinding()
Definition: visshape.h:50
#define mCreateDataObj(clss)
Definition: visdata.h:210
Definition: visshape.h:73
virtual const Coordinates * getCoordinates() const
Definition: visshape.h:91
Definition: indexedshape.h:96
Definition: arraytesselator.h:19
Definition: visshape.h:42
bool useOsgAutoNormalComputation() const
Definition: visshape.h:120
Threads::Lock lock_
Definition: visshape.h:176
PrimitiveType
Definition: indexedshape.h:30
static int cOverallMaterialBinding()
Definition: visshape.h:49
#define mDeclSetGetItem(ownclass, clssname, variable)
Definition: visshape.h:33
FixedString Geometry()
Definition: keystrs.h:68
Definition: visshape.h:187