OpendTect  6.6
expdipview.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: Kristofer Tingdahl
8  Date: 07-10-1999
9  RCS: $Id$
10 ________________________________________________________________________
11 
12 DipView [aspect=dip,azi]
13 
14 DipView makes a relief shading from the dip and azimuth, useful for
15 visualisation of dips in grids. The aspect parameter determines the position
16 of the "light" in the resulting image.
17 
18 Input:
19 0 Inline Dip (as angle)
20 1 Crossline Dip (as angle)
21 
22 Output:
23 0 view
24 
25 @$*/
26 
27 #include <attribcalc.h>
28 #include <task.h>
29 #include <position.h>
30 #include <limits.h>
31 #include <seistrc.h>
32 #include <attribparamimpl.h>
33 
34 
35 mClass(AttribExp) DipViewAttrib : public AttribCalc
36 {
37 public:
39  , "DipView"
40  , BinIDAttribParameter
41  , aspect
42  , BinIDAttribParameter( "aspect"
44  , BinID(60,0)
45  , Interval<int>(0,90)
46  , Interval<int>(-180,180)
47  )
48  , mAttribParamFormHasNoUpdate );
49 
50  DipViewAttrib( Parameters* );
52  const Interval<float>* inlDipMargin(int,int) const { return 0;}
53  const Interval<float>* crlDipMargin(int,int) const { return 0;}
54 
55 
56  int nrAttribs() const { return 1; }
57  const char* definitionStr() const { return desc; }
58 
59  virtual Seis::DataType dataType(int val,
60  const TypeSet<Seis::DataType>&) const
61  { return val?Seis::UnknowData:Seis::Dip; }
62 
63 protected:
64 
65  BinID aspect; //Inl = dip, crl=azimuth
67 
68  mClass(AttribExp) Task : public AttribCalc::Task
69  {
70  public:
71  mClass(AttribExp) Input : public AttribCalc::Task::Input
72  {
73  public:
74  Input( const DipViewAttrib& calculator_ )
75  : calculator ( calculator_ ) {}
76 
77  bool set( const BinID&,
79  const TypeSet<int>&,
80  const TypeSet<float*>& );
81 
83  { return new DipViewAttrib::Task::Input(*this); }
84 
85  const SeisTrc* inldip;
86  const SeisTrc* crldip;
87 
88  int inlattrib;
89  int crlattrib;
90 
92  };
93 
94  Task( const DipViewAttrib& calculator_ )
95  : outp( 0 )
96  , calculator( calculator_ ) {}
97 
98  Task( const Task& );
99  // Not impl. Only to give error if someone uses it
100 
101  void set( float t1_, int nrtimes_, float step_,
102  const AttribCalc::Task::Input* inp,
103  const TypeSet<float*>& outp_)
104  { t1 = t1_; nrtimes = nrtimes_;
105  step = step_; input = inp; outp = outp_[0]; }
106 
107  AttribCalc::Task* clone() const;
108 
109  int getFastestSz() const { return 25; }
110 
111  int nextStep();
112 
114  { return new DipViewAttrib::Task::Input( calculator ); }
115 
116  protected:
117  float* outp;
119 
120  };
121 
122  friend class DipViewAttrib::Task;
124 };
125 
Seis::Dip
@ Dip
Definition: seistype.h:53
DipViewAttrib::Task
Definition: expdipview.h:69
DipViewAttrib::Task::Input::set
bool set(const BinID &, const ObjectSet< AttribProvider > &, const TypeSet< int > &, const TypeSet< float * > &)
sKey::Input
FixedString Input()
Definition: keystrs.h:81
DipViewAttrib::aspect
BinID aspect
Definition: expdipview.h:65
task.h
DipViewAttrib::Task::Input
Definition: expdipview.h:72
DipViewAttrib::desc
BufferString desc
Definition: expdipview.h:66
DipViewAttrib::Task::Input::crldip
const SeisTrc * crldip
Definition: expdipview.h:86
ObjectSet
Set of pointers to objects.
Definition: commontypes.h:31
DipViewAttrib::Task::nextStep
int nextStep()
Seis::DataType
DataType
Definition: seistype.h:53
SeisTrc
Seismic trace.
Definition: seistrc.h:34
DipViewAttrib::Task::Task
Task(const Task &)
DipViewAttrib::~DipViewAttrib
~DipViewAttrib()
DipViewAttrib::Task::calculator
const DipViewAttrib & calculator
Definition: expdipview.h:118
DipViewAttrib::Task::Input::calculator
const DipViewAttrib & calculator
Definition: expdipview.h:91
DipViewAttrib::Task::getFastestSz
int getFastestSz() const
Definition: expdipview.h:109
BinID
Positioning in a seismic survey: inline/crossline or lineNr/trcNr.
Definition: binid.h:31
DipViewAttrib::DipViewAttrib
DipViewAttrib(Parameters *)
mClass
#define mClass(module)
Definition: commondefs.h:181
DeConvolveAttrib::Task::Task
Task(const DeConvolveAttrib &calculator_)
DipViewAttrib::Task::clone
AttribCalc::Task * clone() const
DipViewAttrib::Task::Input::clone
AttribCalc::Task::Input * clone() const
Definition: expdipview.h:82
DipViewAttrib::nrAttribs
int nrAttribs() const
Definition: expdipview.h:56
DipViewAttrib::Task::Input::inldip
const SeisTrc * inldip
Definition: expdipview.h:85
DipViewAttrib::crlDipMargin
const Interval< float > * crlDipMargin(int, int) const
Definition: expdipview.h:53
position.h
DipViewAttrib::Task::Task
Task(const DipViewAttrib &calculator_)
Definition: expdipview.h:94
DipViewAttrib::Task::Input::crlattrib
int crlattrib
Definition: expdipview.h:89
DipViewAttrib::inlDipMargin
const Interval< float > * inlDipMargin(int, int) const
Definition: expdipview.h:52
DipViewAttrib::Task::set
void set(float t1_, int nrtimes_, float step_, const AttribCalc::Task::Input *inp, const TypeSet< float * > &outp_)
Definition: expdipview.h:101
BufferString
OD::String with its own variable length buffer. The buffer has a guaranteed minimum size.
Definition: bufstring.h:40
DipViewAttrib::Task::Input::Input
Input(const DipViewAttrib &calculator_)
Definition: expdipview.h:74
DipViewAttrib
Definition: expdipview.h:36
DipViewAttrib::Task::outp
float * outp
Definition: expdipview.h:117
seistrc.h
DipViewAttrib::Task::getInput
AttribCalc::Task::Input * getInput() const
Definition: expdipview.h:113
Seis::UnknowData
@ UnknowData
Definition: seistype.h:54
DeConvolveAttrib::desc
BufferString desc
Definition: expdeconv.h:115
MPE::step_
RowCol step_
Definition: horizontracker.h:140
DipViewAttrib::dataType
virtual Seis::DataType dataType(int val, const TypeSet< Seis::DataType > &) const
Definition: expdipview.h:59
Table::Required
@ Required
Definition: tabledef.h:27
Interval< int >
DipViewAttrib::mAttrib1Param
mAttrib1Param(DipViewAttrib, "DipView", BinIDAttribParameter, aspect, BinIDAttribParameter("aspect", AttribParameter::Required, BinID(60, 0), Interval< int >(0, 90), Interval< int >(-180, 180)), mAttribParamFormHasNoUpdate)
DipViewAttrib::definitionStr
const char * definitionStr() const
Definition: expdipview.h:57
DeConvolveAttrib::Task::Input::calculator
const DeConvolveAttrib & calculator
Definition: expdeconv.h:149
DipViewAttrib::Task::Input::inlattrib
int inlattrib
Definition: expdipview.h:88
TypeSet< Seis::DataType >

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