15 #include "visbasemod.h" 33 class ForegroundLifter;
38 class TextureChannels;
42 #undef mDeclSetGetItem 43 #define mDeclSetGetItem( ownclass, clssname, variable ) \ 45 clssname* gt##clssname() const; \ 47 inline clssname* get##clssname() { return gt##clssname(); } \ 48 inline const clssname* get##clssname() const { return gt##clssname(); } \ 49 void set##clssname(clssname*) 58 void setMaterialBinding(
int );
62 int getMaterialBinding()
const;
65 void enableRenderLighting(
bool);
77 static const char* sKeyOnOff();
78 static const char* sKeyTexture();
79 static const char* sKeyMaterial();
85 class TextureCallbackHandler;
86 class NodeCallbackHandler;
93 void setPrimitiveType(
Geometry::PrimitiveSet::PrimitiveType);
110 virtual void setDisplayTransformation(
const mVisTrans* );
114 const mVisTrans* getDisplayTransformation()
const;
117 void dirtyCoordinates();
121 void removeAllPrimitiveSets();
122 int nrPrimitiveSets()
const;
129 { usecoordinateschangedcb_ = yn; }
130 void useOsgAutoNormalComputation(
bool);
132 {
return useosgsmoothnormal_; }
133 Coord3 getOsgNormal(
int)
const;
137 BIND_PER_PRIMITIVE, BIND_PER_VERTEX};
139 int getNormalBindType();
142 void useVertexBufferRender(
bool);
147 const unsigned char* getTextureData(
int&,
int&,
int&)
const;
148 void forceRedraw(
bool=
true);
149 void setAttribAndMode(osg::StateAttribute*);
158 virtual void addPrimitiveSetToScene(osg::PrimitiveSet*);
159 virtual void removePrimitiveSetFromScene(
const osg::PrimitiveSet*);
161 void setUpdateVar(
bool& var,
bool yn);
196 #undef mDeclSetGetItem Definition: visobject.h:37
Definition: visshape.h:136
#define mExpClass(module)
Definition: commondefs.h:160
To be able to send and/or receive CallBacks, inherit from this class.
Definition: callback.h:272
RenderMode
Base class for all objects that are visual on the scene.
Definition: visobject.h:34
Material * material_
Definition: visshape.h:75
Definition: vistexturecoords.h:28
ObjectSet< Geometry::PrimitiveSet > primitivesets_
Definition: visshape.h:192
Definition: indexedshape.h:29
A lock of a type that (hopefully) suits your needs. To use it, you need the Locker class...
Definition: threadlock.h:53
Definition: vistexturechannels.h:50
osg::Geometry * osggeom_
Definition: visshape.h:173
void enableCoordinatesChangedCB(bool yn)
Definition: visshape.h:128
Threads::Lock redrawlock_
Definition: visshape.h:184
void usePar(const IOPar &iop, ODPolygon< T > &poly, const char *inpkey)
Definition: polygon.h:188
virtual void setLineStyle(const OD::LineStyle &)
Definition: visshape.h:102
bool isredrawing_
Definition: visshape.h:185
TextureCoords * texturecoords_
Definition: visshape.h:168
bool useosgsmoothnormal_
Definition: visshape.h:175
NodeCallbackHandler * nodecallbackhandler_
Definition: visshape.h:182
bool usecoordinateschangedcb_
Definition: visshape.h:176
BindType
Definition: visshape.h:135
BindType normalbindtype_
Definition: visshape.h:179
BindType colorbindtype_
Definition: visshape.h:178
Generalized set of parameters of the keyword-value type.
Definition: iopar.h:47
static VertexShape * create()
Definition: visshape.h:90
Definition: visnormals.h:32
RefMan< TextureChannels > channels_
Definition: visshape.h:181
Normals * normals_
Definition: visshape.h:166
#define mVisTrans
Definition: visdata.h:31
bool needstextureupdate_
Will trigger redraw request if necessary.
Definition: visshape.h:164
osg::Node * node_
Definition: visshape.h:170
Geometry::PrimitiveSet::PrimitiveType primitivetype_
Definition: visshape.h:187
Definition: vismaterial.h:37
osg::Geode * geode_
Definition: visshape.h:172
Coordinates * coords_
Definition: visshape.h:167
virtual void touchPrimitiveSet(int)
Definition: visshape.h:123
void fillPar(IOPar &iop, const ODPolygon< T > &poly, const char *inpkey)
Definition: polygon.h:175
A cartesian coordinate in 3D space.
Definition: coord.h:72
A set of coordinates. The coordinates will be transformed by the transformation before given to Coin...
Definition: viscoord.h:46
Definition: visannot.h:43
TextureCallbackHandler * texturecallbackhandler_
Definition: visshape.h:183
Open Scene Graph.
Definition: visannot.h:29
static int cPerVertexMaterialBinding()
Definition: visshape.h:60
#define mCreateDataObj(clss)
Definition: visdata.h:209
Definition: visshape.h:83
virtual const Coordinates * getCoordinates() const
Definition: visshape.h:101
Definition: indexedshape.h:99
Definition: arraytesselator.h:21
Definition: visshape.h:52
bool useOsgAutoNormalComputation() const
Definition: visshape.h:131
Threads::Lock lock_
Definition: visshape.h:189
PrimitiveType
Definition: indexedshape.h:33
static int cOverallMaterialBinding()
Definition: visshape.h:59
#define mDeclSetGetItem(ownclass, clssname, variable)
Definition: visshape.h:43
FixedString Geometry()
Definition: keystrs.h:69
Definition: visshape.h:200