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

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