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

Uses triangulation method to interpolate two dimensional arrays. More...

Inheritance diagram for TriangulationArray2DInterpol:
[legend]

Public Member Functions

 mDefaultFactoryInstantiation (Array2DInterpol, TriangulationArray2DInterpol,"Triangulation",::toUiString(sFactoryKeyword())) TriangulationArray2DInterpol()
 
 ~TriangulationArray2DInterpol ()
 
bool setArray (Array2D< float > &, TaskRunner *)
 Set AFTER all settings. More...
 
bool canUseArrayAccess () const
 
bool setArray (ArrayAccess &, TaskRunner *)
 Set AFTER all settings. More...
 
bool nothingToFill () const
 
bool doInterpolation () const
 
void doInterpolation (bool yn)
 
float getMaxDistance () const
 
void setMaxDistance (float r)
 
bool isMaxInterPolChecked () const
 
void setMaxDistInterPolChecekd (bool yn)
 
virtual bool fillPar (IOPar &) const
 
virtual 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
 
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...
 
int64_t totalNr () const
 
- 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...
 

Static Public Member Functions

static const char * sKeyDoInterpol ()
 
static const char * sKeyMaxDistance ()
 
- 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 Member Functions

int minThreadSize () const
 
bool doWork (od_int64, od_int64, int)
 
od_int64 nrIterations () const
 
uiString uiNrDoneText () const
 will be nrDoneText() in 7.x More...
 
bool doPrepare (int)
 
virtual bool initFromArray (TaskRunner *)
 
void getNextNodes (TypeSet< od_int64 > &)
 
- 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 maxNrThreads () 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...
 

Protected Attributes

bool dointerpolation_
 
bool ismaxdistfldchecked_
 
float maxdistance_
 
DAGTriangleTreetriangulation_
 
Triangle2DInterpolatortriangleinterpolator_
 
TypeSet< int > coordlistindices_
 
bool * curdefined_
 
bool * nodestofill_
 
od_int64 curnode_
 
Threads::Lock curnodelock_
 
od_int64 totalnr_
 
TypeSet< int > corneridx_
 
TypeSet< float > cornerval_
 
TypeSet< BinIDcornerbid_
 
- 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_
 

Private Member Functions

 mODTextTranslationClass (TriangulationArray2DInterpol)
 

Additional Inherited Members

- Public Types inherited from Array2DInterpol
enum  FillType { HolesOnly, ConvexHull, Full, Polygon }
 
- Public Types inherited from Task
enum  Control { Run, Pause, Stop }
 

Detailed Description

Uses triangulation method to interpolate two dimensional arrays.

Constructor & Destructor Documentation

TriangulationArray2DInterpol::~TriangulationArray2DInterpol ( )

Member Function Documentation

bool TriangulationArray2DInterpol::canUseArrayAccess ( ) const
inlinevirtual

Reimplemented from Array2DInterpol.

bool TriangulationArray2DInterpol::doInterpolation ( ) const
inline
void TriangulationArray2DInterpol::doInterpolation ( bool  yn)
inline
bool TriangulationArray2DInterpol::doPrepare ( int  nrthreads)
protectedvirtual

Called once, before any doWork is called.

Reimplemented from Array2DInterpol.

bool TriangulationArray2DInterpol::doWork ( od_int64  ,
od_int64  ,
int   
)
protected
virtual bool TriangulationArray2DInterpol::fillPar ( IOPar ) const
virtual

Reimplemented from Array2DInterpol.

Reimplemented in TriangulationHor3DGridder.

float TriangulationArray2DInterpol::getMaxDistance ( ) const
inline
void TriangulationArray2DInterpol::getNextNodes ( TypeSet< od_int64 > &  )
protected
virtual bool TriangulationArray2DInterpol::initFromArray ( TaskRunner )
protectedvirtual

Reimplemented in TriangulationHor3DGridder.

bool TriangulationArray2DInterpol::isMaxInterPolChecked ( ) const
inline
TriangulationArray2DInterpol::mDefaultFactoryInstantiation ( Array2DInterpol  ,
TriangulationArray2DInterpol  ,
"Triangulation"  ,
::toUiString(sFactoryKeyword())   
)
int TriangulationArray2DInterpol::minThreadSize ( ) const
inlineprotectedvirtual
Returns
the minimum number of computations that effectively can be run in a separate thread. A small number will give a large overhead for when each step is quick and nrIterations is not big.

Reimplemented from ParallelTask.

TriangulationArray2DInterpol::mODTextTranslationClass ( TriangulationArray2DInterpol  )
private
bool TriangulationArray2DInterpol::nothingToFill ( ) const
inlinevirtual

Reimplemented from Array2DInterpol.

od_int64 TriangulationArray2DInterpol::nrIterations ( ) const
inlineprotectedvirtual
Returns
the number of times the process should be run.

Implements ParallelTask.

bool TriangulationArray2DInterpol::setArray ( Array2D< float > &  ,
TaskRunner  
)
virtual

Set AFTER all settings.

Reimplemented from Array2DInterpol.

bool TriangulationArray2DInterpol::setArray ( ArrayAccess ,
TaskRunner  
)
virtual

Set AFTER all settings.

Trend is active only when setTrendOrder is called

Reimplemented from Array2DInterpol.

void TriangulationArray2DInterpol::setMaxDistance ( float  r)
inline
void TriangulationArray2DInterpol::setMaxDistInterPolChecekd ( bool  yn)
inline
static const char* TriangulationArray2DInterpol::sKeyDoInterpol ( )
static
static const char* TriangulationArray2DInterpol::sKeyMaxDistance ( )
static
uiString TriangulationArray2DInterpol::uiNrDoneText ( ) const
inlineprotectedvirtual

will be nrDoneText() in 7.x

Reimplemented from Task.

virtual bool TriangulationArray2DInterpol::usePar ( const IOPar )
virtual

Reimplemented from Array2DInterpol.

Reimplemented in TriangulationHor3DGridder.

Member Data Documentation

TypeSet<int> TriangulationArray2DInterpol::coordlistindices_
protected
TypeSet<BinID> TriangulationArray2DInterpol::cornerbid_
protected
TypeSet<int> TriangulationArray2DInterpol::corneridx_
protected
TypeSet<float> TriangulationArray2DInterpol::cornerval_
protected
bool* TriangulationArray2DInterpol::curdefined_
protected
od_int64 TriangulationArray2DInterpol::curnode_
protected
Threads::Lock TriangulationArray2DInterpol::curnodelock_
protected
bool TriangulationArray2DInterpol::dointerpolation_
protected
bool TriangulationArray2DInterpol::ismaxdistfldchecked_
protected
float TriangulationArray2DInterpol::maxdistance_
protected
bool* TriangulationArray2DInterpol::nodestofill_
protected
od_int64 TriangulationArray2DInterpol::totalnr_
protected
Triangle2DInterpolator* TriangulationArray2DInterpol::triangleinterpolator_
protected
DAGTriangleTree* TriangulationArray2DInterpol::triangulation_
protected

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