OpendTect  6.3
binidsurface.h
Go to the documentation of this file.
1 #pragma once
2 
3 /*+
4 ________________________________________________________________________
5 (C) dGB Beheer B.V.; (LICENSE) http://opendtect.org/OpendTect_license.txt
6 Author: A.H. Bril
7 Date: 23-10-1996
8 Contents: Ranges
9 ________________________________________________________________________
10 
11 -*/
12 
13 #include "geometrymod.h"
14 #include "parametricsurface.h"
15 
16 class BinIDValue;
17 class SurveyInfo;
18 
19 template <class T> class Array2D;
20 
21 namespace Geometry
22 {
23 
24 
27 public:
28  BinIDSurface(const BinID& step);
29  BinIDSurface(const BinIDSurface&);
30  ~BinIDSurface();
31  BinIDSurface* clone() const;
32  bool isEmpty() const { return !depths_; }
33 
34  Coord3 computePosition(const Coord& param) const;
35 
36  void setArray(const BinID& start,const BinID& step,
37  Array2D<float>*,bool takeover);
39  Array2D<float>* getArray() { return depths_; }
40  /*Modify on your own responsibility.*/
41  const Array2D<float>* getArray() const
42  { return (const Array2D<float>*) depths_; }
43  void getPosIDs(TypeSet<GeomPosID>&,bool rmudf=true) const;
44 
45  bool insertRow(int row,int nrnew=1);
46  bool insertCol(int col,int nrnew=1);
47  bool removeRow(int,int);
48  bool removeCol(int,int);
49 
50  StepInterval<int> rowRange() const;
51  StepInterval<int> rowRange(int col) const;
52  StepInterval<int> colRange() const;
53  StepInterval<int> colRange(int row) const;
54 
55  bool expandWithUdf(const BinID& start,const BinID& stop);
56 
57  virtual Coord3 getKnot( const RowCol& rc ) const
58  { return getKnot(rc,false); }
59  Coord3 getKnot(const RowCol&,bool computeifudf) const;
60 
61  Coord getKnotCoord(const RowCol&) const;
62 
63 protected:
64  void _setKnot(int idx,const Coord3&);
65  int nrRows() const;
66  int nrCols() const;
67 
70 };
71 
72 } // namespace Geometry
#define mExpClass(module)
Definition: commondefs.h:157
#define mODTextTranslationClass(clss)
Definition: uistring.h:37
Definition: parametricsurface.h:21
Array2D< float > * getArray()
Definition: binidsurface.h:39
const Array2D< float > * getArray() const
Definition: binidsurface.h:41
Holds survey general information.
Definition: survinfo.h:54
3D point or vector
Definition: commontypes.h:57
Array2D ( Subclass of ArrayND ) is a two dimensional array.
Definition: arraynd.h:127
virtual Coord3 getKnot(const RowCol &rc) const
Definition: binidsurface.h:57
BinID and a value.
Definition: binidvalue.h:29
Array2D< float > * depths_
Definition: binidsurface.h:68
const SurveyInfo * surveyinfo_
Definition: binidsurface.h:69
IdxPair used for its row() and col().
Definition: rowcol.h:23
bool isEmpty() const
Definition: binidsurface.h:32
Definition: binidsurface.h:25
Positioning in a seismic survey: inline/crossline or lineNr/trcNr.
Definition: binid.h:28
2D point or vector class.
Definition: commontypes.h:58
Definition: arraytesselator.h:19

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