OpendTect-6_4  6.4
Classes | Public Member Functions | Protected Member Functions | Private Member Functions | Static Private Member Functions | Private Attributes | Friends | List of all members
ContinuousCurvatureArray2DInterpol Class Reference
Inheritance diagram for ContinuousCurvatureArray2DInterpol:
[legend]

Classes

struct  BriggsData
 
struct  HorizonData
 

Public Member Functions

 mDefaultFactoryInstantiation (Array2DInterpol, ContinuousCurvatureArray2DInterpol,"ContinuousCurvature", tr("Continuous curvature")) ContinuousCurvatureArray2DInterpol()
 
 ~ContinuousCurvatureArray2DInterpol ()
 
bool setArray (Array2D< float > &, TaskRunner *)
 Set AFTER all settings. More...
 
bool setArray (ArrayAccess &, TaskRunner *)
 Set AFTER all settings. More...
 
bool fillPar (IOPar &) const
 
bool usePar (const IOPar &)
 
- Public Member Functions inherited from Array2DInterpol
virtual ~Array2DInterpol ()
 
 mDefineFactoryInClass (Array2DInterpol, factory)
 
 mDeclareEnumUtils (FillType)
 
void setFillType (FillType)
 
FillType getFillType () const
 
void setRowStep (float r)
 
void setColStep (float r)
 
void setOrigin (const RowCol &)
 
void setSampling (const TrcKeySampling &)
 Set both steps and the origin. More...
 
void setMaxHoleSize (float)
 
float getMaxHoleSize () const
 
void setClassification (bool)
 
bool isClassification () const
 
void setMask (const Array2D< bool > *, OD::PtrPolicy=OD::UsePtr)
 
virtual uiString infoMsg () const
 
virtual bool nothingToFill () const
 
virtual bool canUseArrayAccess () const
 
void setTrendOrder (PolyTrend::Order ord)
 
bool trimArray (int step, Array2D< char > &edgesmask)
 
void doPolygonCrop ()
 
uiString uiMessage () const
 will be message() again in 7.x More...
 
- Public Member Functions inherited from ParallelTask
virtual ~ParallelTask ()
 
bool execute ()
 
virtual bool executeParallel (bool parallel)
 
void setProgressMeter (ProgressMeter *)
 Must be called before execute() More...
 
int64_t nrDone () const
 May be -1, i.e. class does not report nrdone. More...
 
- Public Member Functions inherited from Task
virtual ~Task ()
 
virtual void enableWorkControl (bool=true)
 Must be called before execute() More...
 
bool workControlEnabled () const
 
virtual void controlWork (Control)
 
virtual Control getState () const
 
- Public Member Functions inherited from NamedObject
 NamedObject (const char *nm=0)
 
 NamedObject (const NamedObject *linkedto)
 
 NamedObject (const NamedObject &)
 
virtual ~NamedObject ()
 
void setLinkedTo (NamedObject *)
 
bool operator== (const NamedObject &oth) const
 
virtual const OD::Stringname () const
 
virtual const OD::StringannotName () const
 
virtual void setName (const char *)
 
void setCleanName (const char *)
 cleans string first More...
 
void deleteNotify (const CallBack &)
 
- 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...
 

Protected Member Functions

virtual bool initFromArray (TaskRunner *)
 
bool doPrepare (int)
 
bool doWork (od_int64, od_int64, int)
 
int maxNrThreads () const
 
od_int64 nrIterations () const
 
od_int64 totalNr () const
 
uiString uiNrDoneText () const
 will be nrDoneText() in 7.x More...
 
- Protected Member Functions inherited from Array2DInterpol
 Array2DInterpol ()
 
void getNodesToFill (const bool *isdef, bool *shouldinterpol, TaskRunner *) const
 
bool isDefined (int idx) const
 
virtual void setFrom (od_int64 target, const od_int64 *sources, const float *weights, int nrsrc)
 
void floodFillArrFrom (int seed, const bool *isdef, bool *shouldinterpol) const
 
void excludeBigHoles (const bool *isdef, bool *shouldinterpol) const
 
- Protected Member Functions inherited from ParallelTask
virtual int minThreadSize () const
 
virtual bool stopAllOnFailure () const
 
 ParallelTask (const char *nm=0)
 
 ParallelTask (const ParallelTask &)
 
int64_t calculateThreadSize (int64_t totalnr, int nrthreads, int thread) const
 
void addToNrDone (int64_t increment)
 
void quickAddToNrDone (int64_t loopidx)
 
void resetNrDone ()
 
- Protected Member Functions inherited from Task
 Task (const char *nm=0)
 
virtual bool shouldContinue ()
 
- Protected Member Functions inherited from CallBacker
void detachAllNotifiers ()
 Call from the destructor of your inherited object. More...
 

Private Member Functions

 mODTextTranslationClass (ContinuousCurvatureArray2DInterpol)
 
bool fillInputData ()
 
bool removePlanarTrend ()
 
void recoverPlanarTrend ()
 
bool rescaleZValues ()
 
int calcGcdEuclid ()
 
int calcPrimeFactors (int)
 
int verifyGridSize (int)
 
int getNextGridSize (int curgridsize)
 
bool setCoefficients ()
 
void fillInForecast (int, int)
 
void findNearestPoint (int)
 
int doFiniteDifference (int)
 
void finalizeGrid ()
 
void updateGridConditions (int)
 
void updateEdgeConditions (int)
 
void updateGridIndex (int)
 
bool updateArray2D ()
 
void InterpolatingFault (const TypeSet< HorizonData > &, int)
 

Static Private Member Functions

static const char * sKeyConvergence ()
 
static const char * sKeyTension ()
 
static const char * sKeySearchRadius ()
 

Private Attributes

int totalnr_
 
bool * curdefined_
 
bool * nodestofill_
 
double tension_
 
float radius_
 
double planec0_
 
double planec1_
 
double planec2_
 
double convergelimit_
 
double zscale_
 
double zmean_
 
int nfact_
 
int nrdata_
 
int offset_ [25][12]
 
double coeff_ [2][12]
 
TypeSet< int > factors_
 
ArrPtrMan< HorizonDatahordata_
 
ArrPtrMan< float > griddata_
 
ArrPtrMan< char > gridstatus_
 
ArrPtrMan< BriggsDatabriggs_
 

Friends

class HorizonDataComparer
 
class GridInitializer
 

Additional Inherited Members

- Public Types inherited from Array2DInterpol
enum  FillType { HolesOnly, ConvexHull, Full, Polygon }
 
- Public Types inherited from Task
enum  Control { Run, Pause, Stop }
 
- Static Public Member Functions inherited from Array2DInterpol
static const char * sKeyFillType ()
 
static const char * sKeyRowStep ()
 
static const char * sKeyColStep ()
 
static const char * sKeyOrigin ()
 
static const char * sKeyNrRows ()
 
static const char * sKeyNrCols ()
 
static const char * sKeyNrCells ()
 
static const char * sKeyMaxHoleSz ()
 
static const char * sKeyPolyNrofNodes ()
 
static const char * sKeyPolyNode ()
 
static const char * sKeyCropPolygon ()
 
- Static Public Member Functions inherited from ParallelTask
static uiString sPosFinished ()
 
static uiString sTrcFinished ()
 
- Static Public Member Functions inherited from Task
static uiString stdNrDoneText ()
 
static uiString uiStdNrDoneText ()
 
- Protected Attributes inherited from Array2DInterpol
Array2D< float > * arr_
 
ArrayAccessarrsetter_
 
float rowstep_
 
float colstep_
 
int nrrows_
 
int nrcols_
 
int nrcells_
 
RowCol origin_
 
FillType filltype_
 
float maxholesize_
 
const Array2D< bool > * mask_
 
bool maskismine_
 
bool isclassification_
 
Stats::CalcSetupstatsetup_
 
PolyTrendtrend_
 
ODPolygon< double > * poly_
 
bool croppoly_
 
- Protected Attributes inherited from Task
Control control_
 
Threads::ConditionVarworkcontrolcondvar_
 
- Protected Attributes inherited from NamedObject
BufferStringname_
 
NamedObjectlinkedto_
 
CallBackSetdelnotify_
 

Detailed Description

Constructor & Destructor Documentation

ContinuousCurvatureArray2DInterpol::~ContinuousCurvatureArray2DInterpol ( )

Member Function Documentation

int ContinuousCurvatureArray2DInterpol::calcGcdEuclid ( )
private
int ContinuousCurvatureArray2DInterpol::calcPrimeFactors ( int  )
private
int ContinuousCurvatureArray2DInterpol::doFiniteDifference ( int  )
private
bool ContinuousCurvatureArray2DInterpol::doPrepare ( int  nrthreads)
protectedvirtual

Called once, before any doWork is called.

Reimplemented from Array2DInterpol.

bool ContinuousCurvatureArray2DInterpol::doWork ( od_int64  ,
od_int64  ,
int   
)
protected
void ContinuousCurvatureArray2DInterpol::fillInForecast ( int  ,
int   
)
private
bool ContinuousCurvatureArray2DInterpol::fillInputData ( )
private
bool ContinuousCurvatureArray2DInterpol::fillPar ( IOPar ) const
virtual

Reimplemented from Array2DInterpol.

Reimplemented in ContinuousCurvatureHor3DGridder.

void ContinuousCurvatureArray2DInterpol::finalizeGrid ( )
private
void ContinuousCurvatureArray2DInterpol::findNearestPoint ( int  )
private
int ContinuousCurvatureArray2DInterpol::getNextGridSize ( int  curgridsize)
private
virtual bool ContinuousCurvatureArray2DInterpol::initFromArray ( TaskRunner )
protectedvirtual
void ContinuousCurvatureArray2DInterpol::InterpolatingFault ( const TypeSet< HorizonData > &  ,
int   
)
private
int ContinuousCurvatureArray2DInterpol::maxNrThreads ( ) const
inlineprotectedvirtual

Reimplemented from ParallelTask.

ContinuousCurvatureArray2DInterpol::mDefaultFactoryInstantiation ( Array2DInterpol  ,
ContinuousCurvatureArray2DInterpol  ,
"ContinuousCurvature"  ,
tr("Continuous curvature")   
)
ContinuousCurvatureArray2DInterpol::mODTextTranslationClass ( ContinuousCurvatureArray2DInterpol  )
private
od_int64 ContinuousCurvatureArray2DInterpol::nrIterations ( ) const
inlineprotectedvirtual
Returns
the number of times the process should be run.

Implements ParallelTask.

void ContinuousCurvatureArray2DInterpol::recoverPlanarTrend ( )
private
bool ContinuousCurvatureArray2DInterpol::removePlanarTrend ( )
private
bool ContinuousCurvatureArray2DInterpol::rescaleZValues ( )
private
bool ContinuousCurvatureArray2DInterpol::setArray ( Array2D< float > &  ,
TaskRunner  
)
virtual

Set AFTER all settings.

Reimplemented from Array2DInterpol.

bool ContinuousCurvatureArray2DInterpol::setArray ( ArrayAccess ,
TaskRunner  
)
virtual

Set AFTER all settings.

Trend is active only when setTrendOrder is called

Reimplemented from Array2DInterpol.

bool ContinuousCurvatureArray2DInterpol::setCoefficients ( )
private
static const char* ContinuousCurvatureArray2DInterpol::sKeyConvergence ( )
staticprivate
static const char* ContinuousCurvatureArray2DInterpol::sKeySearchRadius ( )
staticprivate
static const char* ContinuousCurvatureArray2DInterpol::sKeyTension ( )
staticprivate
od_int64 ContinuousCurvatureArray2DInterpol::totalNr ( ) const
inlineprotectedvirtual

Reimplemented from ParallelTask.

uiString ContinuousCurvatureArray2DInterpol::uiNrDoneText ( ) const
inlineprotectedvirtual

will be nrDoneText() in 7.x

Reimplemented from Task.

bool ContinuousCurvatureArray2DInterpol::updateArray2D ( )
private
void ContinuousCurvatureArray2DInterpol::updateEdgeConditions ( int  )
private
void ContinuousCurvatureArray2DInterpol::updateGridConditions ( int  )
private
void ContinuousCurvatureArray2DInterpol::updateGridIndex ( int  )
private
bool ContinuousCurvatureArray2DInterpol::usePar ( const IOPar )
virtual

Reimplemented from Array2DInterpol.

Reimplemented in ContinuousCurvatureHor3DGridder.

int ContinuousCurvatureArray2DInterpol::verifyGridSize ( int  )
private

Friends And Related Function Documentation

friend class GridInitializer
friend
friend class HorizonDataComparer
friend

Member Data Documentation

ArrPtrMan<BriggsData> ContinuousCurvatureArray2DInterpol::briggs_
private
double ContinuousCurvatureArray2DInterpol::coeff_[2][12]
private
double ContinuousCurvatureArray2DInterpol::convergelimit_
private
bool* ContinuousCurvatureArray2DInterpol::curdefined_
private
TypeSet<int> ContinuousCurvatureArray2DInterpol::factors_
private
ArrPtrMan<float> ContinuousCurvatureArray2DInterpol::griddata_
private
ArrPtrMan<char> ContinuousCurvatureArray2DInterpol::gridstatus_
private
ArrPtrMan<HorizonData> ContinuousCurvatureArray2DInterpol::hordata_
private
int ContinuousCurvatureArray2DInterpol::nfact_
private
bool* ContinuousCurvatureArray2DInterpol::nodestofill_
private
int ContinuousCurvatureArray2DInterpol::nrdata_
private
int ContinuousCurvatureArray2DInterpol::offset_[25][12]
private
double ContinuousCurvatureArray2DInterpol::planec0_
private
double ContinuousCurvatureArray2DInterpol::planec1_
private
double ContinuousCurvatureArray2DInterpol::planec2_
private
float ContinuousCurvatureArray2DInterpol::radius_
private
double ContinuousCurvatureArray2DInterpol::tension_
private
int ContinuousCurvatureArray2DInterpol::totalnr_
private
double ContinuousCurvatureArray2DInterpol::zmean_
private
double ContinuousCurvatureArray2DInterpol::zscale_
private

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