OpendTect  6.6
emhorizonpainter3d.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: Mar 2009
9  RCS: $Id$
10 ________________________________________________________________________
11 
12 -*/
13 
14 #include "earthmodelmod.h"
15 #include "trckeyzsampling.h"
16 #include "emposid.h"
17 #include "flatview.h"
18 
19 class FlatPosData;
20 
21 namespace EM
22 {
23 
24 class Horizon3D;
25 
31 {
32 public:
35 
37  const TrcKeyZSampling&,bool upd=false);
38  void setPath(const TrcKeyPath&);
40 
41  void enableLine(bool);
42  void enableSeed(bool);
43  bool seedEnable() const { return seedenabled_; }
44 
45  void paint();
47  void displayIntersection(bool yn) { intersection_ = yn; }
51 
52  mStruct(EarthModel) Marker3D
53  {
54  Marker3D()
55  : marker_(0)
56  , sectionid_(-1)
57  {}
58  ~Marker3D()
59  { delete marker_; }
60 
61  FlatView::AuxData* marker_;
62  EM::SectionID sectionid_;
63  };
64 
66 
69 
70 protected:
71 
73 
74  bool addPolyLine();
76 
78  SectionMarker3DLine&,Marker3D*&);
79  bool addDataToMarker(const BinID&,const Coord3&,
80  const PosID&,const Horizon3D&,
81  Marker3D&,int idx=-1);
84  bool addDataToMarker(const BinID&,const Coord3&,
85  const PosID&,const Horizon3D&,
86  Marker3D&,bool newmarker,int idx = -1);
87 
91  void changePolyLinePosition( const EM::PosID& pid );
92  Marker3D* create3DMarker(const EM::SectionID&);
94 
95 
98  const TrcKeyPath* path_;
100 
104 
106  Marker3D* markerseeds_;
107  Marker3D* selectionpoints_;
108 
111  int nrseeds_;
114 };
115 
116 } //namespace EM
117 
EM::HorizonPainter3D::setPath
void setPath(const TrcKeyPath &)
EM::HorizonPainter3D::selectionpoints_
Marker3D * selectionpoints_
Definition: emhorizonpainter3d.h:107
TrcKeySampling
Horizontal sampling (inline and crossline range and steps).
Definition: trckeysampling.h:35
Coord3
A cartesian coordinate in 3D space.
Definition: coord.h:72
OD::LineStyle
Definition: draw.h:118
emposid.h
EM::HorizonPainter3D::displayIntersection
void displayIntersection(bool yn)
Definition: emhorizonpainter3d.h:47
flatview.h
EM::HorizonPainter3D::linenabled_
bool linenabled_
Definition: emhorizonpainter3d.h:109
EM::HorizonPainter3D::updatePreferColors
void updatePreferColors()
EM::HorizonPainter3D::updateSelectionColor
void updateSelectionColor()
ObjectSet
Set of pointers to objects.
Definition: commontypes.h:31
EM::HorizonPainter3D::changePolyLinePosition
void changePolyLinePosition(const EM::PosID &pid)
EM::HorizonPainter3D::addDataToMarker
bool addDataToMarker(const BinID &, const Coord3 &, const PosID &, const Horizon3D &, Marker3D &, bool newmarker, int idx=-1)
EM::HorizonPainter3D::abouttorepaint_
Notifier< HorizonPainter3D > abouttorepaint_
Definition: emhorizonpainter3d.h:67
EM::HorizonPainter3D::markerlinestyle_
OD::LineStyle markerlinestyle_
Definition: emhorizonpainter3d.h:101
EM::HorizonPainter3D::generateNewMarker
void generateNewMarker(const Horizon3D &, const SectionID &, SectionMarker3DLine &, Marker3D *&)
EM::HorizonPainter3D::getDisplayedHor
void getDisplayedHor(ObjectSet< Marker3D > &)
EM::HorizonPainter3D::SectionMarker3DLine
ObjectSet< Marker3D > SectionMarker3DLine
Definition: emhorizonpainter3d.h:72
mExpClass
#define mExpClass(module)
Definition: commondefs.h:177
EM::HorizonPainter3D::~HorizonPainter3D
~HorizonPainter3D()
EM::HorizonPainter3D::path_
const TrcKeyPath * path_
Definition: emhorizonpainter3d.h:98
EM::HorizonPainter3D::addPolyLine
bool addPolyLine()
CallBacker
Inherit from this class to be able to send and/or receive CallBacks.
Definition: callback.h:185
FlatView::Viewer
Flat Viewer using FlatView::Data and FlatView::Appearance.
Definition: flatview.h:349
EM::HorizonPainter3D::changePolyLineColor
void changePolyLineColor()
EM
Earth Model objects like horizons, faults, fault-sticks and bodies.
Definition: bulk2dhorizonscanner.h:26
EM::HorizonPainter3D::seedEnable
bool seedEnable() const
Definition: emhorizonpainter3d.h:43
EM::HorizonPainter3D::markerseeds_
Marker3D * markerseeds_
Definition: emhorizonpainter3d.h:106
TrcKeyZSampling
Hor+Vert sampling in 3D surveys.
Definition: trckeyzsampling.h:35
EM::HorizonPainter3D::seedenabled_
bool seedenabled_
Definition: emhorizonpainter3d.h:110
EM::HorizonPainter3D::setTrcKeyZSampling
void setTrcKeyZSampling(const TrcKeyZSampling &, bool upd=false)
EM::HorizonPainter3D::repaintdone_
Notifier< HorizonPainter3D > repaintdone_
Definition: emhorizonpainter3d.h:68
FlatPosData
Positioning of flat 'bulk' data. Only the 'x1' axis can be irregular.
Definition: flatposdata.h:26
BinID
Positioning in a seismic survey: inline/crossline or lineNr/trcNr.
Definition: binid.h:31
EM::HorizonPainter3D::intersection_
bool intersection_
Definition: emhorizonpainter3d.h:112
trckeyzsampling.h
mStruct
#define mStruct(module)
Definition: commondefs.h:182
EM::HorizonPainter3D::tkzs_
TrcKeyZSampling tkzs_
Definition: emhorizonpainter3d.h:97
EM::HorizonPainter3D::enableSeed
void enableSeed(bool)
Notifier
Class to help setup a callback handling.
Definition: notify.h:126
EM::HorizonPainter3D::markerstyle_
MarkerStyle2D markerstyle_
Definition: emhorizonpainter3d.h:102
EM::HorizonPainter3D::addDataToMarker
bool addDataToMarker(const BinID &, const Coord3 &, const PosID &, const Horizon3D &, Marker3D &, int idx=-1)
EM::HorizonPainter3D::setFlatPosData
void setFlatPosData(const FlatPosData *)
EM::HorizonPainter3D::viewer_
FlatView::Viewer & viewer_
Definition: emhorizonpainter3d.h:103
FlatView::AuxData
Class that represents non-bitmap data to be displayed in a flatviewer, such as markers,...
Definition: flatview.h:34
MarkerStyle2D
Definition: draw.h:60
EM::HorizonPainter3D::removePolyLine
void removePolyLine()
EM::SectionID
od_int16 SectionID
Definition: emposid.h:24
EM::HorizonPainter3D::displaySelections
void displaySelections(const TypeSet< EM::PosID > &)
EM::ObjectID
od_int32 ObjectID
Definition: emposid.h:23
EM::HorizonPainter3D::setUpdateTrcKeySampling
void setUpdateTrcKeySampling(const TrcKeySampling &)
EM::HorizonPainter3D::enableLine
void enableLine(bool)
EM::HorizonPainter3D::HorizonPainter3D
HorizonPainter3D(FlatView::Viewer &, const EM::ObjectID &)
EM::HorizonPainter3D
3D horizon painter
Definition: emhorizonpainter3d.h:31
EM::HorizonPainter3D::id_
EM::ObjectID id_
Definition: emhorizonpainter3d.h:96
EM::HorizonPainter3D::updatesamplings_
TrcKeySampling updatesamplings_
Definition: emhorizonpainter3d.h:113
EM::HorizonPainter3D::horChangeCB
void horChangeCB(CallBacker *)
EM::HorizonPainter3D::paintCB
void paintCB(CallBacker *)
EM::HorizonPainter3D::flatposdata_
const FlatPosData * flatposdata_
Definition: emhorizonpainter3d.h:99
EM::HorizonPainter3D::nrseeds_
int nrseeds_
Definition: emhorizonpainter3d.h:111
EM::HorizonPainter3D::paint
void paint()
EM::Horizon3D
3D Horizon. A Horizon is made up of one or more grids (so they can overlap at faults)....
Definition: emhorizon3d.h:96
EM::PosID
Is an identifier for each position in the earthmodel.
Definition: emposid.h:37
EM::HorizonPainter3D::markerline_
ObjectSet< SectionMarker3DLine > markerline_
Definition: emhorizonpainter3d.h:105
TypeSet< TrcKey >
EM::HorizonPainter3D::removeSelections
void removeSelections()
EM::HorizonPainter3D::create3DMarker
Marker3D * create3DMarker(const EM::SectionID &)

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