OpendTect  7.0
Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
Well::Track Class Reference

Well track. More...

Inheritance diagram for Well::Track:
[legend]

Public Member Functions

 Track (const char *nm=nullptr)
 
 Track (const Track &)
 
virtual ~Track ()
 
void addPoint (const Coord &, float z, float dah=mUdf(float))
 Point must be further down track. No checks. More...
 
void addPoint (const Coord3 &, float dah=mUdf(float))
 
bool alwaysDownward () const
 
Coord3 coordAfterIdx (float d_ah, int) const
 Beware: no bounds check on index. More...
 
bool extendIfNecessary (const Interval< float > &dahrg)
 return if changed More...
 
const TypeSet< Coord3 > & getAllPos () const
 
void getAllTVD (int sz, const float *md, const UnitOfMeasure *in, float *tvd, const UnitOfMeasure *out, Info::DepthType dtype=Info::TVDSS) const
 
float getDahForTVD (double, float prevdah=mUdf(float)) const
 
float getDahForTVD (float, float prevdah=mUdf(float)) const
 
float getKbElev () const
 
Coord3 getPos (float d_ah) const
 
Interval< float > getTVDRange (const Interval< float > &dahrg, const UnitOfMeasure *in, const UnitOfMeasure *out, Info::DepthType dtype=Info::TVDSS) const
 
void insertAfterIdx (int, const Coord3 &)
 Know what you're doing - not used normally. More...
 
bool insertAtDah (float dah, float zpos) override
 will interpolate x,y coords More...
 
int insertPoint (const Coord &, float z)
 
int insertPoint (const Coord3 &)
 
bool isEmpty () const
 
float nearestDah (const Coord3 &) const
 
Trackoperator= (const Track &)
 
const Coord3pos (int idx) const
 
void removePoint (int)
 Will correct all dahs below point. More...
 
void setPoint (int, const Coord &, float z)
 Will correct all dahs below point. More...
 
void setPoint (int, const Coord3 &)
 
int size () const
 
float td () const
 
void toTime (const Data &)
 
float value (int idx) const override
 
bool zIsTime () const
 
const Interval< float > zRange () const
 returns (0, 0) for empty track More...
 
const Interval< double > zRangeD () const
 
- Public Member Functions inherited from Well::DahObj
virtual ~DahObj ()
 
void addToDahFrom (int fromidx, float extradah)
 
float dah (int idx) const
 
float * dahArr ()
 
const float * dahArr () const
 
Interval< float > & dahRange ()
 
Interval< float > dahRange () const
 returns Udf for empty dah_ More...
 
float dahStep (bool min_else_average) const
 
void deInterpolate ()
 Remove unnecessary points. More...
 
int indexOf (float dah) const
 
bool isEmpty () const
 
virtual void remove (int idx)
 
void removeFromDahFrom (int fromidx, float extradah)
 
virtual void setEmpty ()
 
int size () const
 
void updateDahRange ()
 
- 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
 
virtual CallBackertrueCaller ()
 
- Public Member Functions inherited from NamedObject
 NamedObject (const char *nm=nullptr)
 
 NamedObject (const NamedObject &oth)
 
virtual ~NamedObject ()
 
virtual BufferString getName () const
 
bool getNameFromPar (const IOPar &)
 
const name_typename () const override
 
NamedObjectoperator= (const NamedObject &)
 
bool operator== (const NamedObject &oth) const
 
virtual void setName (const char *nm)
 
- 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 float getDepth (const Data &, float d_ah, Info::DepthType dtype=Info::TVDSS)
 
- Static Public Member Functions inherited from Well::DahObj
static Notifier< DahObj > & instanceCreated ()
 
- Static Public Member Functions inherited from CallBacker
static void createReceiverForCurrentThread ()
 
static void removeReceiverForCurrentThread ()
 

Protected Member Functions

void eraseAux () override
 
void removeAux (int idx) override
 
void removeZPos ()
 
TypeSet< Coord3 > * zpos_ ()
 
const TypeSet< Coord3 > * zpos_ () const
 
- Protected Member Functions inherited from Well::DahObj
 DahObj (const char *nm=nullptr)
 
 DahObj (const DahObj &)
 
DahObjoperator= (const DahObj &)
 
- Protected Member Functions inherited from NamedCallBacker
void sendDelNotif () const
 

Protected Attributes

TypeSet< Coord3pos_
 
bool zistime_
 
- Protected Attributes inherited from Well::DahObj
TypeSet< float > dah_
 
Interval< float > dahrange_
 
- Protected Attributes inherited from NamedCallBacker
Threads::Atomic< bool > delalreadytriggered_
 
Notifier< NamedCallBackerdelnotif_
 
- Protected Attributes inherited from NamedObject
BufferString name_
 

Additional Inherited Members

- Public Types inherited from ObjectWithName
typedef OD::String name_type
 

Detailed Description

Well track.

<>

Constructor & Destructor Documentation

◆ Track() [1/2]

Well::Track::Track ( const char *  nm = nullptr)

◆ Track() [2/2]

Well::Track::Track ( const Track )

◆ ~Track()

virtual Well::Track::~Track ( )
virtual

Member Function Documentation

◆ addPoint() [1/2]

void Well::Track::addPoint ( const Coord ,
float  z,
float  dah = mUdf(float) 
)

Point must be further down track. No checks.

◆ addPoint() [2/2]

void Well::Track::addPoint ( const Coord3 ,
float  dah = mUdf(float) 
)

◆ alwaysDownward()

bool Well::Track::alwaysDownward ( ) const

◆ coordAfterIdx()

Coord3 Well::Track::coordAfterIdx ( float  d_ah,
int   
) const

Beware: no bounds check on index.

◆ eraseAux()

void Well::Track::eraseAux ( )
inlineoverrideprotectedvirtual

Implements Well::DahObj.

◆ extendIfNecessary()

bool Well::Track::extendIfNecessary ( const Interval< float > &  dahrg)

return if changed

◆ getAllPos()

const TypeSet<Coord3>& Well::Track::getAllPos ( ) const
inline

◆ getAllTVD()

void Well::Track::getAllTVD ( int  sz,
const float *  md,
const UnitOfMeasure in,
float *  tvd,
const UnitOfMeasure out,
Info::DepthType  dtype = Info::TVDSS 
) const

◆ getDahForTVD() [1/2]

float Well::Track::getDahForTVD ( double  ,
float  prevdah = mUdf(float) 
) const

◆ getDahForTVD() [2/2]

float Well::Track::getDahForTVD ( float  ,
float  prevdah = mUdf(float) 
) const

Non-unique. previous DAH may be helpful Don't use if track is in time

◆ getDepth()

static float Well::Track::getDepth ( const Data ,
float  d_ah,
Info::DepthType  dtype = Info::TVDSS 
)
static

◆ getKbElev()

float Well::Track::getKbElev ( ) const

◆ getPos()

Coord3 Well::Track::getPos ( float  d_ah) const

◆ getTVDRange()

Interval<float> Well::Track::getTVDRange ( const Interval< float > &  dahrg,
const UnitOfMeasure in,
const UnitOfMeasure out,
Info::DepthType  dtype = Info::TVDSS 
) const

◆ insertAfterIdx()

void Well::Track::insertAfterIdx ( int  ,
const Coord3  
)

Know what you're doing - not used normally.

◆ insertAtDah()

bool Well::Track::insertAtDah ( float  dah,
float  zpos 
)
overridevirtual

will interpolate x,y coords

Implements Well::DahObj.

◆ insertPoint() [1/2]

int Well::Track::insertPoint ( const Coord ,
float  z 
)

a 'good' place will be found If inserted at top, z will be used as first dah returns position index of the new point

◆ insertPoint() [2/2]

int Well::Track::insertPoint ( const Coord3 )

◆ isEmpty()

bool Well::Track::isEmpty ( ) const

◆ nearestDah()

float Well::Track::nearestDah ( const Coord3 ) const

◆ operator=()

Track& Well::Track::operator= ( const Track )

◆ pos()

const Coord3& Well::Track::pos ( int  idx) const
inline

◆ removeAux()

void Well::Track::removeAux ( int  idx)
inlineoverrideprotectedvirtual

Implements Well::DahObj.

◆ removePoint()

void Well::Track::removePoint ( int  )

Will correct all dahs below point.

◆ removeZPos()

void Well::Track::removeZPos ( )
protected

◆ setPoint() [1/2]

void Well::Track::setPoint ( int  ,
const Coord ,
float  z 
)

Will correct all dahs below point.

◆ setPoint() [2/2]

void Well::Track::setPoint ( int  ,
const Coord3  
)

◆ size()

int Well::Track::size ( ) const
inline

◆ td()

float Well::Track::td ( ) const
inline

◆ toTime()

void Well::Track::toTime ( const Data )

◆ value()

float Well::Track::value ( int  idx) const
inlineoverridevirtual

Implements Well::DahObj.

◆ zIsTime()

bool Well::Track::zIsTime ( ) const
inline

◆ zpos_() [1/2]

TypeSet<Coord3>* Well::Track::zpos_ ( )
protected

◆ zpos_() [2/2]

const TypeSet<Coord3>* Well::Track::zpos_ ( ) const
protected

◆ zRange()

const Interval<float> Well::Track::zRange ( ) const

returns (0, 0) for empty track

◆ zRangeD()

const Interval<double> Well::Track::zRangeD ( ) const

Member Data Documentation

◆ pos_

TypeSet<Coord3> Well::Track::pos_
protected

◆ zistime_

bool Well::Track::zistime_
protected

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