UNIVERS  15.3
UNIVERS base processing software API
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
zq_seismic_trace.hpp
1 /* zq_seismic_trace.hpp */
2 /* $Id: zq_seismic_trace.hpp 20080 2009-12-15 15:57:52Z vlad $ */
3 #ifndef __zq_seismic_trace_hpp
4 #define __zq_seismic_trace_hpp
5 
6 #include "zq_view.hpp"
7 #include "zd_trace.hpp"
8 #include "zqb_bar_draw.hpp"
9 #include "zqb_svoptions.hpp"
10 #include "zqb_real_trace.hpp"
11 #include "zqb_natgrpmember.hpp"
12 
13 
14 class ZqbSeismicTraceCGM;
15 
38 class ZqSeismicTrace : public ZqView
39 {
40 public:
41 
45  ZqSeismicTrace (ZqbNatGroup& rNatTime, ZqbNatGroup& rNatCoord,
46  const char* szName = NULL);
47 
50  ZqSeismicTrace (ZqbNatGroup& rNatTime, ZqbNatGroup& rNatCoord,
51  ZqbPlaceholder* pPh, const char* szName = NULL);
52 
53 
56 
59 
60 
61  /*
62  * Properties
63  */
64 
66  float m_fAmax;
67 
70 
73  bool m_bAltDrawMethod;
74 
77  static bool s_bPaintToCGM;
78 
81  virtual void setLedgeSize (int nPixels);
82 
84  virtual int getLedgeSize () const;
85 
87  virtual void setThickness (int nPixels);
88 
90  virtual int getThickness () const;
91 
92 
93  /*
94  * Run-time type identification facility
95  */
96 
99  virtual bool compatibleDoc (const ZdDocument* pDoc) const;
100 
101 
102  /*
103  * Data control
104  */
105 
109  virtual void describeTrace (const ZqbAbstrTrace& atr);
110 
115  virtual void attachTrace (ZdTrace* pTrace, double coord);
116 
120  virtual void detachDoc ();
121 
123  virtual ZdTrace* trace ();
124 
127  virtual double& coord ();
128 
129 
130 
131  /*
132  * Drawing
133  */
134 
140  virtual void drawTrace (ZqbBarDraw& drawer,
141  double coord, int half_area,
142  const float* pSamples, float fT0 = 0.0);
143 
149  virtual void drawTrace (ZqbSeismicTraceCGM *pCGM,
150  double coord, int half_area,
151  const float* pSamples, float fT0 = 0.0);
152 
155  virtual void redraw (QPainter& paint);
156 
160  virtual void traceOutline (QPolygon& paOutline,
161  double coord, int half_area,
162  const float* pSamples);
163 
164 
169  int ampl2pixel (int iSample, float fAmpl);
170 
174  float pixel2ampl (int iSample, int iPixel);
175 
176 protected:
177 
180 
182  ZdTrace *m_pTrace;
183 
185  double m_fTrCoord;
186 
190  int m_iLedgeSize;
191 
193  int m_iThickness;
194 
195 private:
196 
198  static int s_iNameCounter;
199 
200 };
201 
202 
203 #endif /* zq_seismic_trace.hpp */
virtual int getLedgeSize() const
ZqbSVOptions m_Options
Definition: zq_seismic_trace.hpp:69
Definition: zd_trace.hpp:16
Definition: zqb_natgroup.hpp:35
virtual double & coord()
Definition: zqb_placeholder.hpp:25
virtual void drawTrace(ZqbBarDraw &drawer, double coord, int half_area, const float *pSamples, float fT0=0.0)
ZqbNatGrpMember m_Coord
Definition: zq_seismic_trace.hpp:58
float m_fAmax
Definition: zq_seismic_trace.hpp:66
Definition: zq_view.hpp:18
virtual void describeTrace(const ZqbAbstrTrace &atr)
double m_fTrCoord
Definition: zq_seismic_trace.hpp:185
Definition: zq_seismic_trace.hpp:38
ZqbNatGrpMember m_Time
Definition: zq_seismic_trace.hpp:55
virtual void attachTrace(ZdTrace *pTrace, double coord)
Definition: zqb_svoptions.hpp:139
Definition: zqb_abstr_trace.hpp:13
Definition: zd_document.hpp:16
virtual void redraw()
Definition: zqb_visible.hpp:82
static bool s_bPaintToCGM
Definition: zq_seismic_trace.hpp:77
ZqSeismicTrace(ZqbNatGroup &rNatTime, ZqbNatGroup &rNatCoord, const char *szName=NULL)
int ampl2pixel(int iSample, float fAmpl)
virtual ZdTrace * trace()
virtual void setThickness(int nPixels)
virtual void setLedgeSize(int nPixels)
ZqbAbstrTrace m_aTrace
Definition: zq_seismic_trace.hpp:179
int m_iLedgeSize
Definition: zq_seismic_trace.hpp:190
Definition: zqb_bar_draw.hpp:17
virtual void traceOutline(QPointArray &paOutline, double coord, int half_area, const float *pSamples)
float pixel2ampl(int iSample, int iPixel)
int m_iThickness
Definition: zq_seismic_trace.hpp:193
Definition: zqb_natgrpmember.hpp:26
ZdTrace * m_pTrace
Definition: zq_seismic_trace.hpp:182
virtual bool compatibleDoc(const ZdDocument *pDoc) const
virtual void detachDoc()
bool m_bAltDrawMethod
Definition: zq_seismic_trace.hpp:73
virtual int getThickness() const