OpendTect-6_4  6.4
emfaultstickpainter.h
Go to the documentation of this file.
1 #ifndef emfaultstickpainter_h
2 #define emfaultstickpainter_h
3 
4 /*+
5 ________________________________________________________________________
6 
7  CopyRight: (C) dGB Beheer B.V.
8  Author: Umesh Sinha
9  Date: Jan 2010
10  RCS: $Id$
11 ________________________________________________________________________
12 
13 -*/
14 
15 #include "earthmodelmod.h"
16 #include "callback.h"
17 
18 #include "trckeyzsampling.h"
19 #include "draw.h"
20 #include "emposid.h"
21 #include "flatview.h"
22 #include "coord.h"
23 
24 namespace FlatView { class Viewer; }
25 
26 class FlatPosData;
27 
28 namespace EM
29 {
30 
36 {
37 public:
39  const EM::ObjectID&);
41 
42  void setTrcKeyZSampling(const TrcKeyZSampling&,bool);
43  const TrcKeyZSampling& getTrcKeyZSampling() const { return tkzs_; }
44 
45  void setPath(const TrcKeyPath&);
46  void setRandomLineID(int rdlid);
47  void setFlatPosData(const FlatPosData*);
48  void enableLine(bool);
49  void enableKnots(bool);
50 
51  void setActiveStick(EM::PosID&);
52  int getActiveStickId() { return activestickid_; }
53  void setMarkerLineStyle(const OD::LineStyle&);
54  bool hasDiffActiveStick(const EM::PosID*);
55  FlatView::AuxData* getAuxData(const EM::PosID*);
56 
57  mStruct(EarthModel) StkMarkerInfo
58  {
59  StkMarkerInfo()
60  : marker_(0)
61  , stickid_(-1)
62  {}
63  ~StkMarkerInfo()
64  { delete marker_; }
65 
66  FlatView::AuxData* marker_;
67  int stickid_;
68  };
69 
70  EM::ObjectID& getFaultSSID() { return emid_; }
71  void getDisplayedSticks(ObjectSet<StkMarkerInfo>&);
72 
73  void set2D(bool yn) { is2d_ = yn; }
74  bool is2D() { return is2d_; }
75  const char* getLineName() const;
76  void setGeomID( Pos::GeomID geomid )
77  { geomid_ = geomid; }
78  Pos::GeomID getGeomID() const { return geomid_; }
79  Coord getNormalToTrace( int trcnr ) const;
80  Coord getNormalInRandLine( int idx ) const;
81  //<! idx of BinID in path_ of RandomLine
82 
85 
86  TypeSet<int>& getTrcNos() { return trcnos_; }
87  TypeSet<float>& getDistances() { return distances_; }
88  TypeSet<Coord>& getCoords() { return coords_; }
89 
90  void paint();
91  void enablePaint(bool paintenable);
92 
93 protected:
94 
95  bool addPolyLine();
96 
97  bool getNearestDistance(const Coord3& pos,float& dist);
98 
99  void removePolyLine();
100  void repaintFSS();
101 
102  virtual void fssChangedCB(CallBacker*);
103 
107 
110 
112 
114 
116 
118 
119  bool is2d_;
121 
125 
129  int rdlid_;
130 };
131 
132 } //namespace EM
133 
134 #endif
void setGeomID(Pos::GeomID geomid)
Definition: emfaultstickpainter.h:76
#define mExpClass(module)
Definition: commondefs.h:160
od_int32 ObjectID
Definition: emposid.h:24
Class that represents non-bitmap data to be displayed in a flatviewer, such as markers, lines and more.
Definition: flatview.h:34
To be able to send and/or receive CallBacks, inherit from this class.
Definition: callback.h:272
TypeSet< float > & getDistances()
Definition: emfaultstickpainter.h:87
Positioning of flat &#39;bulk&#39; data. Only the &#39;x1&#39; axis can be irregular.
Definition: flatposdata.h:26
#define mStruct(module)
Definition: commondefs.h:165
Is an identifier for each position in the earthmodel.
Definition: emposid.h:37
Pos::GeomID geomid_
Definition: emfaultstickpainter.h:120
bool is2D()
Definition: emfaultstickpainter.h:74
Definition: draw.h:60
Definition: draw.h:118
ObjectSet< ObjectSet< StkMarkerInfo > > sectionmarkerlines_
Definition: emfaultstickpainter.h:115
Notifier< FaultStickPainter > repaintdone_
Definition: emfaultstickpainter.h:84
int rdlid_
Definition: emfaultstickpainter.h:129
int getActiveStickId()
Definition: emfaultstickpainter.h:52
A cartesian coordinate in 2D space.
Definition: coord.h:25
TypeSet< Coord > & getCoords()
Definition: emfaultstickpainter.h:88
EM::ObjectID emid_
Definition: emfaultstickpainter.h:113
const TrcKeyPath * path_
Definition: emfaultstickpainter.h:105
MarkerStyle2D markerstyle_
Definition: emfaultstickpainter.h:109
const FlatPosData * flatposdata_
Definition: emfaultstickpainter.h:106
Flat Viewer using FlatView::Data and FlatView::Appearance.
Definition: flatview.h:324
Definition: callback.h:254
Set of pointers to objects.
Definition: commontypes.h:32
EM::ObjectID & getFaultSSID()
Definition: emfaultstickpainter.h:70
bool is2d_
Definition: emfaultstickpainter.h:119
const TrcKeyZSampling & getTrcKeyZSampling() const
Definition: emfaultstickpainter.h:43
int activestickid_
Definition: emfaultstickpainter.h:117
bool knotenabled_
Definition: emfaultstickpainter.h:127
FlatView::Viewer & viewer_
Definition: emfaultstickpainter.h:111
Hor+Vert sampling in 3D surveys.
Definition: trckeyzsampling.h:35
bool linenabled_
Definition: emfaultstickpainter.h:126
TypeSet< Coord > coords_
Definition: emfaultstickpainter.h:124
bool paintenable_
Definition: emfaultstickpainter.h:128
void set2D(bool yn)
Definition: emfaultstickpainter.h:73
TypeSet< int > trcnos_
Definition: emfaultstickpainter.h:122
A cartesian coordinate in 3D space.
Definition: coord.h:72
Index_Type GeomID
Definition: commontypes.h:52
Fault stick painter.
Definition: emfaultstickpainter.h:35
TypeSet< int > & getTrcNos()
Definition: emfaultstickpainter.h:86
OD::LineStyle markerlinestyle_
Definition: emfaultstickpainter.h:108
Earth Model objects like horizons, faults, fault-sticks and bodies.
Definition: embody.h:25
Notifier< FaultStickPainter > abouttorepaint_
Definition: emfaultstickpainter.h:83
TrcKeyZSampling tkzs_
Definition: emfaultstickpainter.h:104
Pos::GeomID getGeomID() const
Definition: emfaultstickpainter.h:78
Definition: bitmap2rgb.h:18
TypeSet< float > distances_
Definition: emfaultstickpainter.h:123

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