OpendTect-6_4  6.4
emhorizonpainter2d.h
Go to the documentation of this file.
1 #ifndef emhorizonpainter2d_h
2 #define emhorizonpainter2d_h
3 
4 /*+
5 ________________________________________________________________________
6 
7  CopyRight: (C) dGB Beheer B.V.
8  Author: Umesh Sinha
9  Date: May 2010
10  RCS: $Id$
11 ________________________________________________________________________
12 
13 -*/
14 
15 #include "earthmodelmod.h"
16 #include "trckeyzsampling.h"
17 #include "emposid.h"
18 #include "flatview.h"
19 #include "geom2dintersections.h"
20 
21 
22 namespace EM
23 {
24 
30 {
31 public:
34 
35  void setTrcKeyZSampling(const TrcKeyZSampling&,
36  bool upd=false);
37  void setGeomID(Pos::GeomID);
38 
39  void enableLine(bool);
40  void enableSeed(bool);
41  bool seedEnable() const { return seedenabled_; }
42 
43 
44  TypeSet<int>& getTrcNos() { return trcnos_; }
45  TypeSet<float>& getDistances() { return distances_; }
46 
47  void paint();
48  void displayIntersection(bool yn);
49 
50  mStruct(EarthModel) Marker2D
51  {
52  Marker2D()
53  : marker_(0)
54  , sectionid_(-1)
55  {}
56  ~Marker2D()
57  { delete marker_; }
58 
59  FlatView::AuxData* marker_;
60  EM::SectionID sectionid_;
61  };
62 
63  void getDisplayedHor(ObjectSet<Marker2D>&);
64  void displaySelections(const TypeSet<EM::PosID>&);
65  void removeSelections();
66  void updatePreferColors();
67 
68 
71  void setLine2DInterSectionSet(const Line2DInterSectionSet*);
73  { return &intsectset_; }
74 
75 protected:
76 
77  bool addPolyLine();
78  void removePolyLine();
79  void removeIntersectionMarkers();
80 
81  void horChangeCB(CallBacker*);
82  void changePolyLineColor();
83  void updateIntersectionMarkers(int sid);
84  Marker2D* create2DMarker(const EM::SectionID&,float,float);
85  bool calcLine2DIntersections();
86 
87 
90 
94 
98 
101  Marker2D* markerseeds_;
102 
108  Marker2D* selectionpoints_;
109 
110 private:
111  Marker2D* create2DMarker(const EM::SectionID&);
112  void updateSelectionColor();
113 
114 };
115 
116 } // namespace EM
117 
118 #endif
od_int16 SectionID
Definition: emposid.h:25
#define mExpClass(module)
Definition: commondefs.h:160
TypeSet< int > trcnos_
Definition: emhorizonpainter2d.h:96
Marker2D * markerseeds_
Definition: emhorizonpainter2d.h:101
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
Pos::GeomID geomid_
Definition: emhorizonpainter2d.h:95
bool linenabled_
Definition: emhorizonpainter2d.h:103
#define mStruct(module)
Definition: commondefs.h:165
TypeSet< float > distances_
Definition: emhorizonpainter2d.h:97
Definition: draw.h:60
Definition: draw.h:118
TrcKeyZSampling tkzs_
Definition: emhorizonpainter2d.h:89
Line2DInterSectionSet intsectset_
Definition: emhorizonpainter2d.h:106
Flat Viewer using FlatView::Data and FlatView::Appearance.
Definition: flatview.h:324
OD::LineStyle markerlinestyle_
Definition: emhorizonpainter2d.h:91
Definition: callback.h:254
2D horizon painter
Definition: emhorizonpainter2d.h:29
TypeSet< float > & getDistances()
Definition: emhorizonpainter2d.h:45
ObjectSet< Marker2D > intsectmarks_
Definition: emhorizonpainter2d.h:107
Hor+Vert sampling in 3D surveys.
Definition: trckeyzsampling.h:35
MarkerStyle2D markerstyle_
Definition: emhorizonpainter2d.h:92
Index_Type GeomID
Definition: commontypes.h:52
bool seedenabled_
Definition: emhorizonpainter2d.h:104
Notifier< HorizonPainter2D > abouttorepaint_
Definition: emhorizonpainter2d.h:69
FlatView::Viewer & viewer_
Definition: emhorizonpainter2d.h:93
ObjectSet< Marker2D > SectionMarker2DLine
Definition: emhorizonpainter2d.h:99
const Line2DInterSectionSet * getLine2DInterSectionSet()
Definition: emhorizonpainter2d.h:72
Earth Model objects like horizons, faults, fault-sticks and bodies.
Definition: embody.h:25
Marker2D * selectionpoints_
Definition: emhorizonpainter2d.h:108
EM::ObjectID id_
Definition: emhorizonpainter2d.h:88
ObjectSet< SectionMarker2DLine > markerline_
Definition: emhorizonpainter2d.h:100
bool seedEnable() const
Definition: emhorizonpainter2d.h:41
Definition: geom2dintersections.h:108
TypeSet< int > & getTrcNos()
Definition: emhorizonpainter2d.h:44
Notifier< HorizonPainter2D > repaintdone_
Definition: emhorizonpainter2d.h:70
bool intersection_
Definition: emhorizonpainter2d.h:105

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