UNIVERS  15.3
UNIVERS base processing software API
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
zq_seismic_view.hpp
1 /* zq_seismic_view.hpp */
2 /* $Id: zq_seismic_view.hpp,v 1.12 2007/04/13 20:16:37 vlad Exp $ */
3 #ifndef __zq_seismic_view_hpp
4 #define __zq_seismic_view_hpp
5 
6 #include "zd_seismic_file.hpp"
7 #include "zq_seismic_trace.hpp"
8 //#include "zd_f_vector.hpp"
9 
10 
13 #define TIP_AMPL (10000+1)
14 
17 #define TIP_SAMPLE (10000+2)
18 
21 #define TIP_TIME (10000+3)
22 
25 #define TIP_COORD1 (10000+4)
26 
27 
36 class ZqSeismicView : public ZqView
37 {
38 public:
39 
42  ZqSeismicView (ZqbNatGroup& rNatTime, ZqbNatGroup& rNatCoord,
43  const char* szName = NULL);
44 
47  ZqSeismicView (ZqbNatGroup& rNatTime, ZqbNatGroup& rNatCoord,
48  ZqbPlaceholder* pPh, const char* szName = NULL);
49 
50 
53 
56 
57 
58  /*
59  * Properties
60  */
61 
64 
68  int getLedgeSize () const;
69 
70 
71  /*
72  * Run-time type identification facility
73  */
74 
78  virtual bool compatibleDoc (const ZdDocument* pDoc) const;
79 
80 
81  /*
82  * Data control
83  */
84 
87  virtual void attachFile (ZdSeismicFile* pFile);
88 
92  virtual void detachDoc ();
93 
95  virtual ZdSeismicFile* file ();
96 
97 
98  /*
99  * Dynamic tips
100  */
101 
109  virtual bool tip (const QPoint& p, QString& qsShort, QString& qsLong);
110 
115  virtual void setTipContents (std::vector<int>& hwlist);
116 
121  virtual void setTipContents (int n, /* ids */...);
122 
125  virtual const std::vector<int>& getTipContents () const;
126 
127 
128  /*
129  * Drawing
130  */
131 
133  struct Trace {
134  int m_iIndex;
138  double m_fPseudoCoord;
139  double m_fNatCoord;
141  double m_fEnsAmax;
144  bool operator== (const Trace& tr) const {
145  return m_iTraceId == tr.m_iTraceId;
146  }
147 
149  bool operator< (const Trace& tr) const {
150  return m_fPseudoCoord < tr.m_fPseudoCoord;
151  }
152  };
153 
156  std::vector<Trace> m_vVisTrace;
157 
159  std::map<int,Trace*> m_mVisTrace;
160 
163 
164 
169  //ZdFVectorFloat *m_pAmplDistrib;
170 
173  //std::vector<float> m_vCoord, m_vAmax;
174 
175 
176 
179  virtual bool traceAt (QPoint p, Trace& rTraceLoc);
180 
184  virtual bool traceAt (double fPseudoCoord, Trace& rTraceLoc);
185 
186 
188  virtual void redraw (QPainter& paint);
189 
190 protected:
191 
193  void normTrace (ZqSeismicTrace& seistr, float mm[2], float fEnsAmax);
194 
197  void drawEnsBrackets (QPainter& paint);
198 
201 
203  std::vector<int> m_vTipHW;
204 
205 private:
206 
208  static int s_iNameCounter;
209 
210 };
211 
212 
213 #endif /* zq_seismic_view.hpp */
int m_nHalfHeight
Definition: zq_seismic_view.hpp:200
virtual bool compatibleDoc(const ZdDocument *pDoc) const
void normTrace(ZqSeismicTrace &seistr, float mm[2], float fEnsAmax)
double m_fEnsAmax
Definition: zq_seismic_view.hpp:141
ZqbSVOptions m_Options
Definition: zq_seismic_view.hpp:63
int m_iTraceId
Definition: zq_seismic_view.hpp:135
int getLedgeSize() const
Definition: zqb_natgroup.hpp:35
std::vector< int > m_vTipHW
Definition: zq_seismic_view.hpp:203
virtual void attachFile(ZdSeismicFile *pFile)
int m_iIndex
Definition: zq_seismic_view.hpp:134
Definition: zqb_placeholder.hpp:25
virtual const std::vector< int > & getTipContents() const
float m_fGlobalAmax
Definition: zq_seismic_view.hpp:162
virtual bool tip(const QPoint &p, QString &qsShort, QString &qsLong)
virtual ZdSeismicFile * file()
void drawEnsBrackets(QPainter &paint)
virtual void detachDoc()
Definition: zd_seismic_file.hpp:17
virtual void setTipContents(std::vector< int > &hwlist)
Definition: zq_view.hpp:18
Definition: zq_seismic_view.hpp:36
ZqSeismicView(ZqbNatGroup &rNatTime, ZqbNatGroup &rNatCoord, const char *szName=NULL)
double m_fPseudoCoord
Definition: zq_seismic_view.hpp:138
Definition: zq_seismic_trace.hpp:38
ZqbNatGrpMember m_Time
Definition: zq_seismic_view.hpp:52
int m_iPixCoord
Definition: zq_seismic_view.hpp:137
Definition: zqb_svoptions.hpp:139
Definition: zd_document.hpp:16
virtual void redraw()
Definition: zqb_visible.hpp:82
Definition: zq_seismic_view.hpp:133
virtual bool traceAt(QPoint p, Trace &rTraceLoc)
std::vector< Trace > m_vVisTrace
Definition: zq_seismic_view.hpp:156
double m_fNatCoord
Definition: zq_seismic_view.hpp:139
bool operator==(const Trace &tr) const
Definition: zq_seismic_view.hpp:144
bool operator<(const Trace &tr) const
Definition: zq_seismic_view.hpp:149
Definition: zqb_natgrpmember.hpp:26
ZqbNatGrpMember m_Coord
Definition: zq_seismic_view.hpp:55
std::map< int, Trace * > m_mVisTrace
Definition: zq_seismic_view.hpp:159
int m_iEnsIndex
Definition: zq_seismic_view.hpp:136