OpendTect  6.3
volprochorinterfiller.h
Go to the documentation of this file.
1 #pragma once
2 
3 /*+
4 ________________________________________________________________________
5 
6  (C) dGB Beheer B.V.; (LICENSE) http://opendtect.org/OpendTect_license.txt
7  Author: Y.C. Liu
8  Date: April 2007
9 ________________________________________________________________________
10 
11 -*/
12 
13 #include "volumeprocessingmod.h"
14 #include "volprocstep.h"
15 
16 class BinID;
17 namespace EM { class EMObject; class Horizon; }
18 
19 namespace VolProc
20 {
21 
30 mExpClass(VolumeProcessing) HorInterFiller : public Step
32 public:
34  HorInterFiller, "HorInterFiller",
35  tr("Horizon-based painter - Simple") )
36 
38  ~HorInterFiller();
39  virtual void releaseData();
40 
41  bool isOK() const;
42 
43  bool setTopHorizon(const DBKey*);
44  const DBKey* getTopHorizonID() const;
45 
46  bool setBottomHorizon(const DBKey*);
47  const DBKey* getBottomHorizonID() const;
48 
49  float getTopValue() const;
50  void setTopValue(float);
51 
52  bool usesGradient() const;
53  void useGradient(bool);
55 
56  float getBottomValue() const;
57  void setBottomValue(float);
58 
59  float getGradient() const;
60  void setGradient(float);
61 
62  virtual void fillPar(IOPar&) const;
63  virtual bool usePar(const IOPar&);
64 
65  virtual bool needsFullVolume() const { return false;}
66  virtual bool canInputAndOutputBeSame() const { return true; }
67  virtual bool areSamplesIndependent() const { return true; }
68  virtual bool needsInput() const { return false;}
69  virtual bool isInputPrevStep() const { return true; }
70  virtual bool canHandle2D() const { return true; }
71  virtual bool prefersBinIDWise() const { return true; }
72 
73 protected:
74 
75  virtual bool computeBinID(const BinID&, int);
76  virtual od_int64 extraMemoryUsage(OutputSlotID,
77  const TrcKeySampling&,
78  const StepInterval<int>&) const;
79 
80  EM::Horizon* loadHorizon(const DBKey&) const;
81 
82  float topvalue_;
83  float bottomvalue_;
87  float gradient_;
88 
89  static const char* sKeyTopHorID() { return "Top horizon"; }
90  static const char* sKeyBotHorID() { return "Bottom horizon"; }
91  static const char* sKeyTopValue() { return "Top Value"; }
92  static const char* sKeyBotValue() { return "Bottom Value"; }
93  static const char* sKeyGradient() { return "Gradient"; }
94  static const char* sKeyUseGradient() { return "Use Gradient"; }
95 
96 };
97 
98 } // namespace VolProc
#define mExpClass(module)
Definition: commondefs.h:157
virtual bool needsFullVolume() const
Definition: volprochorinterfiller.h:65
EM::Horizon * tophorizon_
Definition: volprochorinterfiller.h:84
float topvalue_
Definition: volprochorinterfiller.h:82
virtual bool canHandle2D() const
Definition: volprochorinterfiller.h:70
#define mODTextTranslationClass(clss)
Definition: uistring.h:37
bool usegradient_
Definition: volprochorinterfiller.h:86
void usePar(const IOPar &iop, ODPolygon< T > &poly, const char *inpkey)
Definition: polygon.h:200
#define od_int64
Definition: plftypes.h:34
float bottomvalue_
Definition: volprochorinterfiller.h:83
static const char * sKeyBotHorID()
Definition: volprochorinterfiller.h:90
#define mDefaultFactoryInstantiation(baseclss, clss, keywrd, usernm)
Definition: factory.h:287
static const char * sKeyTopHorID()
Definition: volprochorinterfiller.h:89
void getGradient(const X &x, const Y &y, int sz, int firstx, int firsty, RT *gradptr=0, RT *interceptptr=0)
Definition: simpnumer.h:262
Fills a volume with values.
Definition: volprochorinterfiller.h:30
Generalized set of parameters of the keyword-value type.
Definition: iopar.h:53
Horizontal sampling (inline and crossline range and steps).
Definition: trckeysampling.h:25
static const char * sKeyTopValue()
Definition: volprochorinterfiller.h:91
Adapter for a VolProc chain to external attribute calculation.
Definition: velocitygridder.h:29
int OutputSlotID
Definition: volprocstep.h:47
float gradient_
Definition: volprochorinterfiller.h:87
FixedString Horizon()
Definition: keystrs.h:70
virtual bool areSamplesIndependent() const
Definition: volprochorinterfiller.h:67
virtual bool prefersBinIDWise() const
Definition: volprochorinterfiller.h:71
void fillPar(IOPar &iop, const ODPolygon< T > &poly, const char *inpkey)
Definition: polygon.h:187
An algorithm/calculation/transformation that takes one scalar volume as input, processes it...
Definition: volprocstep.h:39
EM::Horizon * bottomhorizon_
Definition: volprochorinterfiller.h:85
virtual bool needsInput() const
Definition: volprochorinterfiller.h:68
Positioning in a seismic survey: inline/crossline or lineNr/trcNr.
Definition: binid.h:28
Earth Model objects like horizons, faults, fault-sticks and bodies.
Definition: embody.h:23
Full key to any object in the OpendTect data store.
Definition: dbkey.h:36
virtual bool isInputPrevStep() const
Definition: volprochorinterfiller.h:69
static const char * sKeyGradient()
Definition: volprochorinterfiller.h:93
static const char * sKeyBotValue()
Definition: volprochorinterfiller.h:92
virtual bool canInputAndOutputBeSame() const
Definition: volprochorinterfiller.h:66
Horizon Surface.
Definition: emhorizon.h:46
static const char * sKeyUseGradient()
Definition: volprochorinterfiller.h:94

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