OpendTect-6_4  6.4
Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | Private Member Functions | Static Private Member Functions | List of all members
visBase::TexturePanelStrip Class Reference

A TexturePanelStrip is geometrically invariant in the z-direction. Its serially connected panels are painted with a layered texture. More...

Inheritance diagram for visBase::TexturePanelStrip:
[legend]

Public Member Functions

 TexturePanelStrip ()
 
virtual const char * getClassName () const
 
void setTextureChannels (visBase::TextureChannels *)
 
visBase::TextureChannelsgetTextureChannels ()
 
void freezeDisplay (bool yn=true)
 
bool isDisplayFrozen () const
 
void setPath (const TypeSet< Coord > &)
 
const TypeSet< Coord > & getPath () const
 
void setPath2TextureMapping (const TypeSet< float > &offsets)
 
const TypeSet< float > & getPath2TextureMapping () const
 
void setPathTextureShift (float shift, int startidx=0)
 
float getPathTextureShift () const
 
float getPathTextureShiftStartIdx () const
 
void setZRange (const Interval< float > &)
 
Interval< float > getZRange () const
 
void unsetZRange2TextureMapping ()
 
void setZRange2TextureMapping (const Interval< float > &offsets)
 Mapped on full texture row range if not set. More...
 
bool isZRange2TextureMappingSet () const
 
Interval< float > getZRange2TextureMapping () const
 
void setZTextureShift (float)
 
float getZTextureShift () const
 
void swapTextureAxes (bool yn=true)
 
bool areTextureAxesSwapped () const
 
void smoothNormals (bool yn=true)
 
bool areNormalsSmoothed () const
 
void setDisplayTransformation (const visBase::Transformation *)
 
const visBase::TransformationgetDisplayTransformation () const
 
int getNrTextures () const
 
const unsigned char * getTextureData () const
 
 struct (visBase) TextureDataInfo
 
bool getTextureDataInfo (int tidx, TextureDataInfo &texinfo) const
 
bool getTextureInfo (int &width, int &height, int &pixsize)
 
- Public Member Functions inherited from visBase::VisualObjectImpl
void setRightHandSystem (bool yn)
 
bool isRightHandSystem () const
 
void setLockable ()
 
void readLock ()
 
void readUnLock ()
 
bool tryReadLock ()
 
void writeLock ()
 
void writeUnLock ()
 
bool tryWriteLock ()
 
void setMaterial (Material *)
 
const MaterialgetMaterial () const
 
MaterialgetMaterial ()
 
virtual bool usePar (const IOPar &)
 
virtual void fillPar (IOPar &) const
 
- Public Member Functions inherited from visBase::VisualObject
virtual bool getBoundingBox (Coord3 &min, Coord3 &max) const
 
virtual void setSceneEventCatcher (EventCatcher *)
 
void setSelectable (bool yn)
 
bool selectable () const
 
NotifierAccessselection ()
 
NotifierAccessdeSelection ()
 
virtual NotifierAccessrightClicked ()
 
const EventInforightClickedEventInfo () const
 
const TypeSet< int > * rightClickedPath () const
 
- Public Member Functions inherited from visBase::DataObject
virtual bool isOK () const
 
int id () const
 
void setID (int nid)
 
uiString name () const
 
virtual void setName (const uiString &)
 
osg::Node * osgNode (bool skipswitch=false)
 
const osg::Node * osgNode (bool skipswitch=false) const
 
void enableTraversal (unsigned int mask, bool yn=true)
 
bool isTraversalEnabled (unsigned int mask) const
 
SoNode * getInventorNode ()
 
const SoNode * getInventorNode () const
 
virtual bool turnOn (bool yn)
 
virtual bool isOn () const
 
bool isPickable (bool actively=true) const
 
void setPickable (bool actively, bool passively=true)
 
virtual bool rightClickable () const
 
void select () const
 
void deSelect () const
 
void updateSel () const
 
virtual bool isSelected () const
 
virtual void setPixelDensity (float dpi)
 
virtual float getPixelDensity () const
 
virtual const char * errMsg () const
 
bool serialize (const char *filename, bool binary=false)
 
void setParent (DataObjectGroup *g)
 
template<class T >
T * addNodeState (T *ns)
 
NodeStateremoveNodeState (NodeState *)
 
NodeStategetNodeState (int idx)
 
- Public Member Functions inherited from CallBacker
 CallBacker ()
 
 CallBacker (const CallBacker &)
 
virtual ~CallBacker ()
 
bool attachCB (NotifierAccess &, const CallBack &, bool onlyifnew=false)
 
bool attachCB (NotifierAccess *notif, const CallBack &cb, bool onlyifnew=false)
 
void detachCB (NotifierAccess &, const CallBack &)
 
void detachCB (NotifierAccess *notif, const CallBack &cb)
 
bool isNotifierAttached (NotifierAccess *) const
 Only for debugging purposes, don't use. More...
 

Static Public Member Functions

static TexturePanelStripcreate ()
 
static void initClass ()
 
static const char * getStaticClassName ()
 
static const char * sFactoryKeyword ()
 
- Static Public Member Functions inherited from visBase::VisualObjectImpl
static const char * sKeyMaterialID ()
 
static const char * sKeyMaterial ()
 
static const char * sKeyIsOn ()
 
- Static Public Member Functions inherited from visBase::DataObject
static int getID (const osg::Node *)
 
static float getDefaultPixelDensity ()
 
static void setVisualizationThread (const void *)
 Call only once from initialization. More...
 
static bool isVisualizationThread ()
 
static void requestSingleRedraw ()
 
static void setCommonViewer (osgViewer::CompositeViewer *)
 
static osgViewer::CompositeViewer * getCommonViewer ()
 

Protected Member Functions

 ~TexturePanelStrip ()
 
void updatePath ()
 
- Protected Member Functions inherited from visBase::VisualObjectImpl
int addChild (osg::Node *)
 
void insertChild (int pos, osg::Node *)
 
void removeChild (osg::Node *)
 
int childIndex (const osg::Node *) const
 
 VisualObjectImpl (bool selectable)
 
virtual ~VisualObjectImpl ()
 
virtual void materialChangeCB (CallBacker *)
 
virtual void setGroupNode (osg::Group *)
 Must be called during construction. More...
 
- Protected Member Functions inherited from visBase::VisualObject
void triggerSel ()
 
void triggerDeSel ()
 
void triggerRightClick (const EventInfo *)
 
 VisualObject (bool selectable=false)
 
 ~VisualObject ()
 
- Protected Member Functions inherited from visBase::DataObject
virtual osg::StateSet * getStateSet ()
 
void doAddNodeState (NodeState *ns)
 
 DataObject ()
 
template<class T >
T * setOsgNode (T *t)
 Must be called during construction. More...
 
void updateNodemask ()
 
- Protected Member Functions inherited from CallBacker
void detachAllNotifiers ()
 Call from the destructor of your inherited object. More...
 

Protected Attributes

RefMan< const visBase::Transformationdisplaytrans_
 
osgGeo::TexturePanelStripNode * osgpanelstrip_
 
RefMan< TextureChannelschannels_
 
PtrMan< TypeSet< Coord > > pathcoords_
 
PtrMan< TypeSet< float > > pathtexoffsets_
 
- Protected Attributes inherited from visBase::VisualObjectImpl
Materialmaterial_
 
bool righthandsystem_
 
- Protected Attributes inherited from visBase::DataObject
DataObjectGroupparent_
 

Private Member Functions

TexturePanelStripoperator= (const TexturePanelStrip &)
 
 TexturePanelStrip (const TexturePanelStrip &)
 
bool calcTextureCoordinates (int, TypeSet< Coord > &) const
 
bool calcTextureCoordinates (TypeSet< Coord3 > &coordin, TypeSet< Coord > &coordout) const
 
Coord getImageTextureCoord (const Coord3 dispcrd, double minx, double xlen, double minz, double zlen) const
 
void getMinAndLengthInfo (double &minval, double &len, bool bz=false) const
 

Static Private Member Functions

static visBase::DataObjectcreateInternal ()
 

Detailed Description

A TexturePanelStrip is geometrically invariant in the z-direction. Its serially connected panels are painted with a layered texture.

Constructor & Destructor Documentation

visBase::TexturePanelStrip::TexturePanelStrip ( const TexturePanelStrip )
private
visBase::TexturePanelStrip::TexturePanelStrip ( )
visBase::TexturePanelStrip::~TexturePanelStrip ( )
protected

Member Function Documentation

bool visBase::TexturePanelStrip::areNormalsSmoothed ( ) const
bool visBase::TexturePanelStrip::areTextureAxesSwapped ( ) const
bool visBase::TexturePanelStrip::calcTextureCoordinates ( int  ,
TypeSet< Coord > &   
) const
private
bool visBase::TexturePanelStrip::calcTextureCoordinates ( TypeSet< Coord3 > &  coordin,
TypeSet< Coord > &  coordout 
) const
private

don't use it, only for keep ABI.

static TexturePanelStrip* visBase::TexturePanelStrip::create ( )
inlinestatic
static visBase::DataObject* visBase::TexturePanelStrip::createInternal ( )
inlinestaticprivate
void visBase::TexturePanelStrip::freezeDisplay ( bool  yn = true)
virtual const char* visBase::TexturePanelStrip::getClassName ( ) const
virtual

Reimplemented from visBase::DataObject.

const visBase::Transformation* visBase::TexturePanelStrip::getDisplayTransformation ( ) const
virtual

All positions going from the outside world to the vis should be transformed with this transform. This enables us to have different coord-systems outside OI, e.g. we can use UTM coords outside the vis without loosing precision in the vis.

Reimplemented from visBase::DataObject.

Coord visBase::TexturePanelStrip::getImageTextureCoord ( const Coord3  dispcrd,
double  minx,
double  xlen,
double  minz,
double  zlen 
) const
private

don't use it, only for keep ABI.

void visBase::TexturePanelStrip::getMinAndLengthInfo ( double &  minval,
double &  len,
bool  bz = false 
) const
private

don't use it, only for keep ABI.

int visBase::TexturePanelStrip::getNrTextures ( ) const
const TypeSet<Coord>& visBase::TexturePanelStrip::getPath ( ) const
const TypeSet<float>& visBase::TexturePanelStrip::getPath2TextureMapping ( ) const
float visBase::TexturePanelStrip::getPathTextureShift ( ) const
float visBase::TexturePanelStrip::getPathTextureShiftStartIdx ( ) const
static const char* visBase::TexturePanelStrip::getStaticClassName ( )
static
visBase::TextureChannels* visBase::TexturePanelStrip::getTextureChannels ( )
const unsigned char* visBase::TexturePanelStrip::getTextureData ( ) const
bool visBase::TexturePanelStrip::getTextureDataInfo ( int  tidx,
TextureDataInfo &  texinfo 
) const
bool visBase::TexturePanelStrip::getTextureInfo ( int &  width,
int &  height,
int &  pixsize 
)
Interval<float> visBase::TexturePanelStrip::getZRange ( ) const
Interval<float> visBase::TexturePanelStrip::getZRange2TextureMapping ( ) const
float visBase::TexturePanelStrip::getZTextureShift ( ) const
static void visBase::TexturePanelStrip::initClass ( )
static
bool visBase::TexturePanelStrip::isDisplayFrozen ( ) const

As long as texture panel strip is frozen, the display of (lengthy) changes to its geometry and/or texture is postponed. Avoids showing half-finished updates.

bool visBase::TexturePanelStrip::isZRange2TextureMappingSet ( ) const
TexturePanelStrip& visBase::TexturePanelStrip::operator= ( const TexturePanelStrip )
private
void visBase::TexturePanelStrip::setDisplayTransformation ( const visBase::Transformation )
virtual

All positions going from the outside world to the vis should be transformed with this transform. This enables us to have different coord-systems outside OI, e.g. we can use UTM coords outside the vis without loosing precision in the vis.

Reimplemented from visBase::DataObject.

void visBase::TexturePanelStrip::setPath ( const TypeSet< Coord > &  )
void visBase::TexturePanelStrip::setPath2TextureMapping ( const TypeSet< float > &  offsets)

Monotonously non-decreasing list of column offsets into the texture. There should be one offset per path coordinate.

void visBase::TexturePanelStrip::setPathTextureShift ( float  shift,
int  startidx = 0 
)

Extra horizontal shift of (part of) the specified texture mapping (in pixel units). Shifting starts at path coord "startidx"

void visBase::TexturePanelStrip::setTextureChannels ( visBase::TextureChannels )
void visBase::TexturePanelStrip::setZRange ( const Interval< float > &  )
void visBase::TexturePanelStrip::setZRange2TextureMapping ( const Interval< float > &  offsets)

Mapped on full texture row range if not set.

void visBase::TexturePanelStrip::setZTextureShift ( float  )

Extra vertical shift of the specified texture mapping (in pixel units).

static const char* visBase::TexturePanelStrip::sFactoryKeyword ( )
static
void visBase::TexturePanelStrip::smoothNormals ( bool  yn = true)
visBase::TexturePanelStrip::struct ( visBase  )
inline
void visBase::TexturePanelStrip::swapTextureAxes ( bool  yn = true)
void visBase::TexturePanelStrip::unsetZRange2TextureMapping ( )
void visBase::TexturePanelStrip::updatePath ( )
protected

Member Data Documentation

RefMan<TextureChannels> visBase::TexturePanelStrip::channels_
protected
RefMan<const visBase::Transformation > visBase::TexturePanelStrip::displaytrans_
protected
osgGeo::TexturePanelStripNode* visBase::TexturePanelStrip::osgpanelstrip_
protected
PtrMan<TypeSet<Coord> > visBase::TexturePanelStrip::pathcoords_
protected
PtrMan<TypeSet<float> > visBase::TexturePanelStrip::pathtexoffsets_
protected

Generated at for the OpendTect seismic interpretation project. Copyright (C): dGB Beheer B. V. 2019