OpendTect  7.0
Public Member Functions | Static Public Member Functions | Private Member Functions | Private Attributes | List of all members
TimeDepthConverter Class Reference

Converts between time and depth given a model. It expects a valueseries, where unit of value should be SI unit. Scaler provides factor value in case the valueseries in non SI unit. More...

Inheritance diagram for TimeDepthConverter:
[legend]

Public Member Functions

 TimeDepthConverter ()
 
 ~TimeDepthConverter ()
 
bool calcDepths (ValueSeries< float > &, int sz, const SamplingData< double > &timesamp) const
 
bool calcTimes (ValueSeries< float > &, int sz, const SamplingData< double > &depthsamp) const
 
bool isOK () const override
 
bool setVelocityModel (const ValueSeries< float > &vels, int sz, const SamplingData< double > &sd, const VelocityDesc &, bool istime, const Scaler *scaler=nullptr)
 
- Public Member Functions inherited from TimeDepthModel
 TimeDepthModel ()
 
 TimeDepthModel (const TimeDepthModel &)
 
virtual ~TimeDepthModel ()
 
const char * errMsg () const
 
float getDepth (float time) const
 
float getDepth (int idx) const
 
const float * getDepths () const
 
float getFirstTime () const
 
float getLastTime () const
 
float getTime (float depth) const
 
float getTime (int idx) const
 
const float * getTimes () const
 
float getVelocity (float depth) const
 
TimeDepthModeloperator= (const TimeDepthModel &)
 
bool setModel (const float *dpths, const float *times, int sz)
 
int size () const
 

Static Public Member Functions

static bool calcDepths (const ValueSeries< float > &vels, int velsz, const SamplingData< double > &, float *depths, const Scaler *scaler=nullptr)
 
static bool calcDepths (const ValueSeries< float > &vels, int velsz, const ValueSeries< double > &times, double *depths, const Scaler *scaler=nullptr)
 
static mDeprecatedDef bool calcDepths (const ValueSeries< float > &vels, int velsz, const ValueSeries< float > &times, float *depths)
 
static bool calcTimes (const ValueSeries< float > &vels, int velsz, const SamplingData< double > &, float *times, const Scaler *scaler=nullptr)
 
static bool calcTimes (const ValueSeries< float > &vels, int velsz, const ValueSeries< float > &depth, float *times, const Scaler *scaler=nullptr)
 
static bool isVelocityDescUseable (const VelocityDesc &, bool velintime, uiString *errmsg=0)
 
- Static Public Member Functions inherited from TimeDepthModel
static float getDepth (const float *dpths, const float *times, int sz, float time)
 
static float getTime (const float *dpths, const float *times, int sz, float depth)
 
static float getVelocity (const float *dpths, const float *times, int sz, float depth)
 

Private Member Functions

void calcZ (ValueSeries< float > &, int outpsz, const SamplingData< double > &, bool istime) const
 

Private Attributes

float firstvel_
 
float lastvel_
 
bool regularinput_ = true
 
SamplingData< double > & sd_
 

Additional Inherited Members

- Protected Member Functions inherited from TimeDepthModel
void forceTimes (const TimeDepthModel &)
 
float * getDepths ()
 
float * getTimes ()
 
void setAllVals (float *dpths, float *times, int sz)
 
void setEmpty ()
 
void setSize (int sz)
 
void setVals (float *, bool isdepth, bool becomesmine=true)
 
- Static Protected Member Functions inherited from TimeDepthModel
static float convertTo (const float *dpths, const float *times, int sz, float z, bool targetistime)
 
- Protected Attributes inherited from TimeDepthModel
uiString errmsg_
 

Detailed Description

Converts between time and depth given a model. It expects a valueseries, where unit of value should be SI unit. Scaler provides factor value in case the valueseries in non SI unit.

<>

Constructor & Destructor Documentation

◆ TimeDepthConverter()

TimeDepthConverter::TimeDepthConverter ( )

◆ ~TimeDepthConverter()

TimeDepthConverter::~TimeDepthConverter ( )

Member Function Documentation

◆ calcDepths() [1/4]

static bool TimeDepthConverter::calcDepths ( const ValueSeries< float > &  vels,
int  velsz,
const SamplingData< double > &  ,
float *  depths,
const Scaler scaler = nullptr 
)
static
Parameters
velsVelocity as Vint in time
velsz,depths

◆ calcDepths() [2/4]

static bool TimeDepthConverter::calcDepths ( const ValueSeries< float > &  vels,
int  velsz,
const ValueSeries< double > &  times,
double *  depths,
const Scaler scaler = nullptr 
)
static
Parameters
velsVelocity as Vint in time
velsz,times,depths

◆ calcDepths() [3/4]

static mDeprecatedDef bool TimeDepthConverter::calcDepths ( const ValueSeries< float > &  vels,
int  velsz,
const ValueSeries< float > &  times,
float *  depths 
)
static

◆ calcDepths() [4/4]

bool TimeDepthConverter::calcDepths ( ValueSeries< float > &  ,
int  sz,
const SamplingData< double > &  timesamp 
) const

◆ calcTimes() [1/3]

static bool TimeDepthConverter::calcTimes ( const ValueSeries< float > &  vels,
int  velsz,
const SamplingData< double > &  ,
float *  times,
const Scaler scaler = nullptr 
)
static
Parameters
velsVelocity as Vint in depth
velsz,times

◆ calcTimes() [2/3]

static bool TimeDepthConverter::calcTimes ( const ValueSeries< float > &  vels,
int  velsz,
const ValueSeries< float > &  depth,
float *  times,
const Scaler scaler = nullptr 
)
static
Parameters
velsVelocity as Vint in depth
velsz,times,depth

◆ calcTimes() [3/3]

bool TimeDepthConverter::calcTimes ( ValueSeries< float > &  ,
int  sz,
const SamplingData< double > &  depthsamp 
) const

◆ calcZ()

void TimeDepthConverter::calcZ ( ValueSeries< float > &  ,
int  outpsz,
const SamplingData< double > &  ,
bool  istime 
) const
private

◆ isOK()

bool TimeDepthConverter::isOK ( ) const
overridevirtual

Reimplemented from TimeDepthModel.

◆ isVelocityDescUseable()

static bool TimeDepthConverter::isVelocityDescUseable ( const VelocityDesc ,
bool  velintime,
uiString errmsg = 0 
)
static

◆ setVelocityModel()

bool TimeDepthConverter::setVelocityModel ( const ValueSeries< float > &  vels,
int  sz,
const SamplingData< double > &  sd,
const VelocityDesc ,
bool  istime,
const Scaler scaler = nullptr 
)

Member Data Documentation

◆ firstvel_

float TimeDepthConverter::firstvel_
private

◆ lastvel_

float TimeDepthConverter::lastvel_
private

◆ regularinput_

bool TimeDepthConverter::regularinput_ = true
private

◆ sd_

SamplingData<double>& TimeDepthConverter::sd_
private

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