OpendTect  6.6
Classes | Public Types | Public Member Functions | Static Public Member Functions | Public Attributes | Protected Member Functions | Protected Attributes | Private Member Functions | Static Private Member Functions | List of all members
visBase::Well Class Reference

Base class for well display. More...

Inheritance diagram for visBase::Well:
[legend]

Classes

struct  BasicParams
 
struct  LogParams
 
struct  MarkerParams
 
struct  TrackParams
 

Public Types

typedef std::pair< Coord3, float > Coord3Value
 
enum  LogStyle { Welllog , Seismic , Logtube }
 
enum  Side { Left =0 , Right , Center }
 
- Public Types inherited from ObjectWithName
typedef OD::String name_type
 

Public Member Functions

 Well ()
 
void addMarker (const MarkerParams &)
 
bool canShowMarkers () const
 
void clearLog (Side)
 
void fillPar (IOPar &) const
 
virtual const char * getClassName () const
 
const visBase::TransformationgetDisplayTransformation () const
 
int getLogLineWidth () const
 
BufferString getLogName (Side side) const
 
bool getLogOsgData (LogStyle style, Side side, TypeSet< Coord3 > &coords, TypeSet< Color > &colors, TypeSet< TypeSet< int > > &pss, TypeSet< Coord3 > &normals, bool path) const
 
void getLogStyle (Side, int &) const
 
float getLogWidth (Side) const
 
const visBase::Text2getMarkerNames () const
 
const visBase::MarkerSetgetMarkerSet () const
 for pdf3d More...
 
float getPixelDensity () const
 
Coord3 getPos (const TypeSet< Coord3Value > &, int) const
 
unsigned int getRepeat (Side side) const
 
float getRepeatStep (Side side) const
 
const PolyLinegetTrack () const
 
float getValue (const TypeSet< Coord3Value > &, int, bool, const LinScaler &) const
 
const Text2getWellBottomText () const
 
const Text2getWellTopText () const
 
bool hasLog (Side side) const
 
bool hasTube (Side side) const
 
void initializeData (const LogParams &, int)
 
const OD::LineStylelineStyle () const
 
const ColorlogColor (Side) const
 
const ColorlogFillColor (int) const
 
bool logLineDisplayed (Side) const
 
bool logNameShown () const
 
bool logsShown () const
 
bool markerNameShown () const
 
int markerScreenSize () const
 
bool markersShown () const
 
void removeAllMarkers ()
 
void removeLogs ()
 
void setDisplayTransformation (const visBase::Transformation *)
 
void setLineStyle (const OD::LineStyle &)
 
void setLogBlock (bool, int)
 
void setLogColor (const Color &, Side)
 
void setLogData (const TypeSet< Coord3Value > &crdvals, const TypeSet< Coord3Value > &crdvalsF, const LogParams &lp, bool isFilled)
 
void setLogFill (bool, Side)
 
void setLogFillColorTab (const LogParams &, Side)
 
void setLogLineDisplayed (bool, Side)
 
void setLogLineWidth (int, Side)
 
void setLogStyle (int, Side)
 
void setLogTubeDisplay (Side side, bool yn)
 
void setLogWidth (float, Side)
 
void setMarkerScreenSize (int)
 
void setMarkerSetParams (const MarkerParams &)
 
void setOverlapp (float, Side)
 
void setPixelDensity (float)
 
void setRepeat (int, Side)
 
void setTrack (const TypeSet< Coord3 > &)
 
void setTrackProperties (Color &, int)
 
void setWellName (const TrackParams &)
 
void setZAxisTransform (ZAxisTransform *, TaskRunner *)
 
void showLog (bool, Side)
 
void showLogName (bool)
 
void showLogs (bool)
 
void showMarkerName (bool)
 
void showMarkers (bool)
 
void showWellBotName (bool)
 
void showWellTopName (bool)
 
bool usePar (const IOPar &par)
 
bool wellBotNameShown () const
 
bool wellTopNameShown () const
 
- Public Member Functions inherited from visBase::VisualObjectImpl
MaterialgetMaterial ()
 
const MaterialgetMaterial () const
 
bool isRightHandSystem () const
 
void readLock ()
 
void readUnLock ()
 
void setLockable ()
 
void setMaterial (Material *)
 
void setRightHandSystem (bool yn)
 
bool tryReadLock ()
 
bool tryWriteLock ()
 
void writeLock ()
 
void writeUnLock ()
 
- Public Member Functions inherited from visBase::VisualObject
NotifierAccessdeSelection ()
 
virtual bool getBoundingBox (Coord3 &min, Coord3 &max) const
 
virtual NotifierAccessrightClicked ()
 
const EventInforightClickedEventInfo () const
 
const TypeSet< int > * rightClickedPath () const
 
bool selectable () const
 
NotifierAccessselection ()
 
virtual void setSceneEventCatcher (EventCatcher *)
 
void setSelectable (bool yn)
 
- Public Member Functions inherited from visBase::DataObject
template<class T >
T * addNodeState (T *ns)
 
void deSelect () const
 
void enableTraversal (unsigned int mask, bool yn=true)
 
virtual const char * errMsg () const
 
SoNode * getInventorNode ()
 
const SoNode * getInventorNode () const
 
virtual BufferString getName () const
 
NodeStategetNodeState (int idx)
 
int id () const
 
virtual bool isOK () const
 
virtual bool isOn () const
 
bool isPickable (bool actively=true) const
 
virtual bool isSelected () const
 
bool isTraversalEnabled (unsigned int mask) const
 
virtual const OD::Stringname () const
 
osg::Node * osgNode (bool skipswitch=false)
 
const osg::Node * osgNode (bool skipswitch=false) const
 
NodeStateremoveNodeState (NodeState *)
 
virtual bool rightClickable () const
 
void select () const
 
bool serialize (const char *filename, bool binary=false)
 
void setID (int nid)
 
virtual void setName (const char *)
 
void setName (const uiString &uistr)
 
void setParent (DataObjectGroup *g)
 
void setPickable (bool actively, bool passively=true)
 
void setUiName (const uiString &)
 
virtual bool turnOn (bool yn)
 
uiString uiName () const
 
void updateSel () const
 
- Public Member Functions inherited from NamedCallBacker
 NamedCallBacker (const char *nm=0)
 
 NamedCallBacker (const NamedCallBacker &)
 
virtual Notifier< NamedCallBacker > & objectToBeDeleted () const
 
bool operator== (const NamedCallBacker &oth) const
 
bool operator== (const NamedObject &oth) const
 
- Public Member Functions inherited from CallBacker
 CallBacker ()
 
 CallBacker (const CallBacker &)
 
virtual ~CallBacker ()
 
bool attachCB (const NotifierAccess &, const CallBack &, bool onlyifnew=false) const
 
bool attachCB (const NotifierAccess *notif, const CallBack &cb, bool onlyifnew=false) const
 
void detachAllNotifiers () const
 Call from the destructor of your inherited object. More...
 
void detachCB (const NotifierAccess &, const CallBack &) const
 
void detachCB (const NotifierAccess *notif, const CallBack &cb) const
 
virtual bool isCapsule () const
 
bool isNotifierAttached (const NotifierAccess *) const
 Only for debugging purposes, don't use. More...
 
void stopReceivingNotifications () const
 
- Public Member Functions inherited from NamedObject
 NamedObject (const char *nm=nullptr)
 
 NamedObject (const NamedObject &oth)
 
virtual ~NamedObject ()
 
bool getNameFromPar (const IOPar &)
 
NamedObjectoperator= (const NamedObject &)
 
bool operator== (const NamedObject &oth) const
 
- Public Member Functions inherited from ObjectWithName
virtual ~ObjectWithName ()
 
bool hasName (const char *nm) const
 
bool hasName (const name_type &nm) const
 
void putNameInPar (IOPar &) const
 

Static Public Member Functions

static Wellcreate ()
 
static const char * getStaticClassName ()
 
static void initClass ()
 
static const char * linestylestr ()
 
static const char * logwidthstr ()
 
static const char * markerszstr ()
 
static const char * sFactoryKeyword ()
 
static const char * showlognmstr ()
 
static const char * showlogsstr ()
 
static const char * showmarkerstr ()
 
static const char * showmarknmstr ()
 
static const char * showwellbotnmstr ()
 
static const char * showwelltopnmstr ()
 
- Static Public Member Functions inherited from visBase::VisualObjectImpl
static const char * sKeyIsOn ()
 
static const char * sKeyMaterial ()
 
static const char * sKeyMaterialID ()
 
- Static Public Member Functions inherited from visBase::DataObject
static osgViewer::CompositeViewer * getCommonViewer ()
 
static float getDefaultPixelDensity ()
 
static int getID (const osg::Node *)
 
static bool isVisualizationThread ()
 
static void requestSingleRedraw ()
 
static void setCommonViewer (osgViewer::CompositeViewer *)
 
static void setDefaultPixelDensity (float)
 
static void setVisualizationThread (const void *)
 Call only once from initialization. More...
 
- Static Public Member Functions inherited from CallBacker
static void createReceiverForCurrentThread ()
 
static void removeReceiverForCurrentThread ()
 

Public Attributes

int markersize_
 

Protected Member Functions

 ~Well ()
 
void transformZIfNeeded (Coord3 &) const
 
- Protected Member Functions inherited from visBase::VisualObjectImpl
 VisualObjectImpl (bool selectable)
 
virtual ~VisualObjectImpl ()
 
int addChild (osg::Node *)
 
int childIndex (const osg::Node *) const
 
void insertChild (int pos, osg::Node *)
 
virtual void materialChangeCB (CallBacker *)
 
void removeChild (osg::Node *)
 
void setGroupNode (DataObject *)
 
virtual void setGroupNode (osg::Group *)
 Must be called during construction. More...
 
- Protected Member Functions inherited from visBase::VisualObject
 VisualObject (bool selectable=false)
 
 ~VisualObject ()
 
void triggerDeSel ()
 
void triggerRightClick (const EventInfo *)
 
void triggerSel ()
 
- Protected Member Functions inherited from visBase::DataObject
 DataObject ()
 
void doAddNodeState (NodeState *ns)
 
virtual osg::StateSet * getStateSet ()
 
template<class T >
T * setOsgNode (T *t)
 Must be called during construction. More...
 
void updateNodemask ()
 
- Protected Member Functions inherited from NamedCallBacker
void sendDelNotif () const
 

Protected Attributes

bool displaylog_ [2]
 
bool displaytube_ [2]
 
osgGeo::WellLog * leftlogdisplay_
 
BufferStringSet lognames_
 
Text2markernames_
 
MarkerSetmarkerset_
 
float pixeldensity_
 
osgGeo::WellLog * rightlogdisplay_
 
bool showlogs_
 
bool showmarkers_
 
PolyLinetrack_
 
const visBase::Transformationtransformation_
 
int voiidx_
 
Text2wellbottxt_
 
Text2welltoptxt_
 
ZAxisTransformzaxistransform_
 
- Protected Attributes inherited from visBase::VisualObjectImpl
Materialmaterial_
 
bool righthandsystem_
 
- Protected Attributes inherited from visBase::DataObject
DataObjectGroupparent_
 
- Protected Attributes inherited from NamedCallBacker
Threads::Atomic< bool > delalreadytriggered_
 
Notifier< NamedCallBackerdelnotif_
 
- Protected Attributes inherited from NamedObject
BufferString name_
 

Private Member Functions

 Well (const Well &)
 
void getLinScale (const LogParams &, LinScaler &, bool isFill=true)
 
void getLinScaleRange (const LinScaler &, Interval< float > &, float &, float &, bool)
 
osgGeo::WellLog * getLogDisplay (Side) const
 
Welloperator= (const Well &)
 
void updateMakerNamePosition (Side side, float sizefactor)
 
void updateMakerSize (float sizefactor)
 
void updateText (Text *vistxt, const char *txt, const Coord3 *pos, const FontData &fnt, bool sizedynamic=true)
 

Static Private Member Functions

static visBase::DataObjectcreateInternal ()
 

Detailed Description

Base class for well display.

<>

Member Typedef Documentation

◆ Coord3Value

typedef std::pair<Coord3,float> visBase::Well::Coord3Value

Member Enumeration Documentation

◆ LogStyle

Enumerator
Welllog 
Seismic 
Logtube 

◆ Side

Enumerator
Left 
Right 
Center 

Constructor & Destructor Documentation

◆ Well() [1/2]

visBase::Well::Well ( const Well )
private

◆ Well() [2/2]

visBase::Well::Well ( )

◆ ~Well()

visBase::Well::~Well ( )
protected

Member Function Documentation

◆ addMarker()

void visBase::Well::addMarker ( const MarkerParams )

◆ canShowMarkers()

bool visBase::Well::canShowMarkers ( ) const

◆ clearLog()

void visBase::Well::clearLog ( Side  )

◆ create()

static Well* visBase::Well::create ( )
inlinestatic

◆ createInternal()

static visBase::DataObject* visBase::Well::createInternal ( )
inlinestaticprivate

◆ fillPar()

void visBase::Well::fillPar ( IOPar ) const
virtual

Reimplemented from visBase::VisualObjectImpl.

◆ getClassName()

virtual const char* visBase::Well::getClassName ( ) const
virtual

Reimplemented from visBase::DataObject.

◆ getDisplayTransformation()

const visBase::Transformation* visBase::Well::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.

◆ getLinScale()

void visBase::Well::getLinScale ( const LogParams ,
LinScaler ,
bool  isFill = true 
)
private

◆ getLinScaleRange()

void visBase::Well::getLinScaleRange ( const LinScaler ,
Interval< float > &  ,
float &  ,
float &  ,
bool   
)
private

◆ getLogDisplay()

osgGeo::WellLog* visBase::Well::getLogDisplay ( Side  ) const
private

◆ getLogLineWidth()

int visBase::Well::getLogLineWidth ( ) const

◆ getLogName()

BufferString visBase::Well::getLogName ( Side  side) const

◆ getLogOsgData()

bool visBase::Well::getLogOsgData ( LogStyle  style,
Side  side,
TypeSet< Coord3 > &  coords,
TypeSet< Color > &  colors,
TypeSet< TypeSet< int > > &  pss,
TypeSet< Coord3 > &  normals,
bool  path 
) const

◆ getLogStyle()

void visBase::Well::getLogStyle ( Side  ,
int &   
) const

◆ getLogWidth()

float visBase::Well::getLogWidth ( Side  ) const

◆ getMarkerNames()

const visBase::Text2* visBase::Well::getMarkerNames ( ) const
inline

◆ getMarkerSet()

const visBase::MarkerSet* visBase::Well::getMarkerSet ( ) const
inline

for pdf3d

◆ getPixelDensity()

float visBase::Well::getPixelDensity ( ) const
inlinevirtual

Reimplemented from visBase::DataObject.

◆ getPos()

Coord3 visBase::Well::getPos ( const TypeSet< Coord3Value > &  ,
int   
) const

◆ getRepeat()

unsigned int visBase::Well::getRepeat ( Side  side) const

◆ getRepeatStep()

float visBase::Well::getRepeatStep ( Side  side) const

◆ getStaticClassName()

static const char* visBase::Well::getStaticClassName ( )
static

◆ getTrack()

const PolyLine* visBase::Well::getTrack ( ) const
inline

◆ getValue()

float visBase::Well::getValue ( const TypeSet< Coord3Value > &  ,
int  ,
bool  ,
const LinScaler  
) const

◆ getWellBottomText()

const Text2* visBase::Well::getWellBottomText ( ) const
inline

◆ getWellTopText()

const Text2* visBase::Well::getWellTopText ( ) const
inline

◆ hasLog()

bool visBase::Well::hasLog ( Side  side) const

◆ hasTube()

bool visBase::Well::hasTube ( Side  side) const

◆ initClass()

static void visBase::Well::initClass ( )
static

◆ initializeData()

void visBase::Well::initializeData ( const LogParams ,
int   
)

◆ lineStyle()

const OD::LineStyle& visBase::Well::lineStyle ( ) const

◆ linestylestr()

static const char* visBase::Well::linestylestr ( )
static

◆ logColor()

const Color& visBase::Well::logColor ( Side  ) const

◆ logFillColor()

const Color& visBase::Well::logFillColor ( int  ) const

◆ logLineDisplayed()

bool visBase::Well::logLineDisplayed ( Side  ) const

◆ logNameShown()

bool visBase::Well::logNameShown ( ) const

◆ logsShown()

bool visBase::Well::logsShown ( ) const

◆ logwidthstr()

static const char* visBase::Well::logwidthstr ( )
static

◆ markerNameShown()

bool visBase::Well::markerNameShown ( ) const

◆ markerScreenSize()

int visBase::Well::markerScreenSize ( ) const

◆ markersShown()

bool visBase::Well::markersShown ( ) const

◆ markerszstr()

static const char* visBase::Well::markerszstr ( )
static

◆ operator=()

Well& visBase::Well::operator= ( const Well )
private

◆ removeAllMarkers()

void visBase::Well::removeAllMarkers ( )

◆ removeLogs()

void visBase::Well::removeLogs ( )

◆ setDisplayTransformation()

void visBase::Well::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.

◆ setLineStyle()

void visBase::Well::setLineStyle ( const OD::LineStyle )

◆ setLogBlock()

void visBase::Well::setLogBlock ( bool  ,
int   
)

◆ setLogColor()

void visBase::Well::setLogColor ( const Color ,
Side   
)

◆ setLogData()

void visBase::Well::setLogData ( const TypeSet< Coord3Value > &  crdvals,
const TypeSet< Coord3Value > &  crdvalsF,
const LogParams lp,
bool  isFilled 
)

◆ setLogFill()

void visBase::Well::setLogFill ( bool  ,
Side   
)

◆ setLogFillColorTab()

void visBase::Well::setLogFillColorTab ( const LogParams ,
Side   
)

◆ setLogLineDisplayed()

void visBase::Well::setLogLineDisplayed ( bool  ,
Side   
)

◆ setLogLineWidth()

void visBase::Well::setLogLineWidth ( int  ,
Side   
)

◆ setLogStyle()

void visBase::Well::setLogStyle ( int  ,
Side   
)

◆ setLogTubeDisplay()

void visBase::Well::setLogTubeDisplay ( Side  side,
bool  yn 
)

◆ setLogWidth()

void visBase::Well::setLogWidth ( float  ,
Side   
)

◆ setMarkerScreenSize()

void visBase::Well::setMarkerScreenSize ( int  )

◆ setMarkerSetParams()

void visBase::Well::setMarkerSetParams ( const MarkerParams )

◆ setOverlapp()

void visBase::Well::setOverlapp ( float  ,
Side   
)

◆ setPixelDensity()

void visBase::Well::setPixelDensity ( float  )
virtual

Reimplemented from visBase::DataObject.

◆ setRepeat()

void visBase::Well::setRepeat ( int  ,
Side   
)

◆ setTrack()

void visBase::Well::setTrack ( const TypeSet< Coord3 > &  )

◆ setTrackProperties()

void visBase::Well::setTrackProperties ( Color ,
int   
)

◆ setWellName()

void visBase::Well::setWellName ( const TrackParams )

◆ setZAxisTransform()

void visBase::Well::setZAxisTransform ( ZAxisTransform ,
TaskRunner  
)

◆ sFactoryKeyword()

static const char* visBase::Well::sFactoryKeyword ( )
static

◆ showLog()

void visBase::Well::showLog ( bool  ,
Side   
)

◆ showLogName()

void visBase::Well::showLogName ( bool  )

◆ showlognmstr()

static const char* visBase::Well::showlognmstr ( )
static

◆ showLogs()

void visBase::Well::showLogs ( bool  )

◆ showlogsstr()

static const char* visBase::Well::showlogsstr ( )
static

◆ showMarkerName()

void visBase::Well::showMarkerName ( bool  )

◆ showMarkers()

void visBase::Well::showMarkers ( bool  )

◆ showmarkerstr()

static const char* visBase::Well::showmarkerstr ( )
static

◆ showmarknmstr()

static const char* visBase::Well::showmarknmstr ( )
static

◆ showWellBotName()

void visBase::Well::showWellBotName ( bool  )

◆ showwellbotnmstr()

static const char* visBase::Well::showwellbotnmstr ( )
static

◆ showWellTopName()

void visBase::Well::showWellTopName ( bool  )

◆ showwelltopnmstr()

static const char* visBase::Well::showwelltopnmstr ( )
static

◆ transformZIfNeeded()

void visBase::Well::transformZIfNeeded ( Coord3 ) const
protected

◆ updateMakerNamePosition()

void visBase::Well::updateMakerNamePosition ( Side  side,
float  sizefactor 
)
private

◆ updateMakerSize()

void visBase::Well::updateMakerSize ( float  sizefactor)
private

◆ updateText()

void visBase::Well::updateText ( Text vistxt,
const char *  txt,
const Coord3 pos,
const FontData fnt,
bool  sizedynamic = true 
)
private

◆ usePar()

bool visBase::Well::usePar ( const IOPar par)
virtual

Reimplemented from visBase::VisualObjectImpl.

◆ wellBotNameShown()

bool visBase::Well::wellBotNameShown ( ) const

◆ wellTopNameShown()

bool visBase::Well::wellTopNameShown ( ) const

Member Data Documentation

◆ displaylog_

bool visBase::Well::displaylog_[2]
protected

◆ displaytube_

bool visBase::Well::displaytube_[2]
protected

◆ leftlogdisplay_

osgGeo::WellLog* visBase::Well::leftlogdisplay_
protected

◆ lognames_

BufferStringSet visBase::Well::lognames_
protected

◆ markernames_

Text2* visBase::Well::markernames_
protected

◆ markerset_

MarkerSet* visBase::Well::markerset_
protected

◆ markersize_

int visBase::Well::markersize_

◆ pixeldensity_

float visBase::Well::pixeldensity_
protected

◆ rightlogdisplay_

osgGeo::WellLog* visBase::Well::rightlogdisplay_
protected

◆ showlogs_

bool visBase::Well::showlogs_
protected

◆ showmarkers_

bool visBase::Well::showmarkers_
protected

◆ track_

PolyLine* visBase::Well::track_
protected

◆ transformation_

const visBase::Transformation* visBase::Well::transformation_
protected

◆ voiidx_

int visBase::Well::voiidx_
protected

◆ wellbottxt_

Text2* visBase::Well::wellbottxt_
protected

◆ welltoptxt_

Text2* visBase::Well::welltoptxt_
protected

◆ zaxistransform_

ZAxisTransform* visBase::Well::zaxistransform_
protected

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