OpendTect  6.3
emhorizonpainter2d.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: May 2010
9 ________________________________________________________________________
10 
11 -*/
12 
13 #include "earthmodelmod.h"
14 #include "trckeyzsampling.h"
15 #include "emposid.h"
16 #include "flatview.h"
17 #include "geom2dintersections.h"
18 
19 namespace EM
20 {
21 
27 {
28 public:
31 
32  void setTrcKeyZSampling(const TrcKeyZSampling&,
33  bool upd=false);
34  void setGeomID(Pos::GeomID);
35 
36  void enableLine(bool);
37  void enableSeed(bool);
38  bool seedEnable() const { return seedenabled_; }
39 
40  TypeSet<int>& getTrcNos() { return trcnos_; }
41  TypeSet<float>& getDistances() { return distances_; }
42 
43  void paint(CallBacker* =0);
44  void displayIntersection(bool yn);
45 
46  mStruct(EarthModel) Marker2D
47  {
48  Marker2D()
49  : marker_(0)
50  , sectionid_(-1)
51  {}
52  ~Marker2D()
53  { delete marker_; }
54 
55  FlatView::AuxData* marker_;
56  EM::SectionID sectionid_;
57  };
58 
59  void getDisplayedHor(ObjectSet<Marker2D>&);
60  void displaySelections(const TypeSet<EM::PosID>&);
61  void removeSelections();
62  void updateSelectionColor();
63 
66 
67 protected:
68 
69  bool addPolyLine();
70  void removePolyLine();
71  void removeIntersectionMarkers();
72 
73  void horChangeCB(CallBacker*);
74  void changePolyLineColor();
75  void updateIntersectionMarkers(int sid);
76  Marker2D* create2DMarker(const EM::SectionID&,float,float);
77  bool calcLine2DIntersections();
78 
79 
82 
86 
90 
93  Marker2D* markerseeds_;
95  Marker2D* selectionpoints_;
96 
97 
101 
102 
103 private:
104  Marker2D* create2DMarker(const EM::SectionID&);
105 
106 };
107 
108 } // namespace EM
od_int16 SectionID
Definition: emposid.h:23
#define mExpClass(module)
Definition: commondefs.h:157
TypeSet< int > trcnos_
Definition: emhorizonpainter2d.h:88
Marker2D * markerseeds_
Definition: emhorizonpainter2d.h:93
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
Pos::GeomID geomid_
Definition: emhorizonpainter2d.h:87
bool linenabled_
Definition: emhorizonpainter2d.h:98
#define mStruct(module)
Definition: commondefs.h:162
TypeSet< float > distances_
Definition: emhorizonpainter2d.h:89
Definition: draw.h:119
TrcKeyZSampling tkzs_
Definition: emhorizonpainter2d.h:81
Line2DInterSectionSet intsectset_
Definition: emhorizonpainter2d.h:100
Flat Viewer using FlatView::Data and FlatView::Appearance.
Definition: flatview.h:330
OD::LineStyle markerlinestyle_
Definition: emhorizonpainter2d.h:83
Class to help setup a callback handling.
Definition: notify.h:121
2D horizon painter
Definition: emhorizonpainter2d.h:26
TypeSet< float > & getDistances()
Definition: emhorizonpainter2d.h:41
ObjectSet< Marker2D > intsectmarks_
Definition: emhorizonpainter2d.h:94
Definition: draw.h:63
Hor+Vert sampling in 3D surveys.
Definition: trckeyzsampling.h:32
OD::MarkerStyle2D markerstyle_
Definition: emhorizonpainter2d.h:84
Index_Type GeomID
Definition: commontypes.h:48
bool seedenabled_
Definition: emhorizonpainter2d.h:99
Notifier< HorizonPainter2D > abouttorepaint_
Definition: emhorizonpainter2d.h:64
FlatView::Viewer & viewer_
Definition: emhorizonpainter2d.h:85
ObjectSet< Marker2D > SectionMarker2DLine
Definition: emhorizonpainter2d.h:91
Earth Model objects like horizons, faults, fault-sticks and bodies.
Definition: embody.h:23
Marker2D * selectionpoints_
Definition: emhorizonpainter2d.h:95
EM::ObjectID id_
Definition: emhorizonpainter2d.h:80
ObjectSet< SectionMarker2DLine > markerline_
Definition: emhorizonpainter2d.h:92
bool seedEnable() const
Definition: emhorizonpainter2d.h:38
Definition: geom2dintersections.h:99
TypeSet< int > & getTrcNos()
Definition: emhorizonpainter2d.h:40
Notifier< HorizonPainter2D > repaintdone_
Definition: emhorizonpainter2d.h:65

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