168 lines
5.6 KiB
C++
168 lines
5.6 KiB
C++
/**
|
||
* @file QtWindowWellSection.h
|
||
* @brief well section 窗口 插件,包括单井,多井窗口
|
||
* @date 2014-5-26
|
||
* @author: liyonggang
|
||
*/
|
||
#ifndef CQTWINDOWWELLSECTION__H
|
||
#define CQTWINDOWWELLSECTION__H
|
||
#pragma warning( push ,0)
|
||
#include <QMainWindow>
|
||
#include "slf.h"
|
||
#include <QLineEdit>
|
||
#include "BaseObject.h"
|
||
#include "ObjWelllog.h"
|
||
// #include "VecWindow.h"
|
||
// #include "List_Table_Inf.h"
|
||
// #include "WellSectionExport.h"
|
||
// #include "ObjWellTrack.h"
|
||
// #include "WellSectionWindowDocument.h"
|
||
#include <QTextEdit>
|
||
#include <QDialogButtonBox>
|
||
#pragma warning( pop)
|
||
// BEGIN_OSGGRAPHICS_NAMESPACE
|
||
#pragma execution_character_set("utf-8")
|
||
#pragma warning( push ,0)
|
||
#pragma warning( pop )
|
||
struct LIST_TABLE_INF
|
||
{
|
||
int lstm;//是否每米取值,0=不,>0,指定间隔
|
||
char m_TableName[16];
|
||
char m_TableType[16];//输出的统计表类型
|
||
char m_TableSpFIELD[16];//特征字段
|
||
int SPVALNUM;
|
||
char SPVAL[100][116];
|
||
int IsHB;
|
||
int Table_Field_Num;
|
||
int m_Mode;//取值模式选择:0-每条曲线按各自给定取值方式取值,1-按给定曲线的极值点深度取值
|
||
int m_Flag;//
|
||
int IsFC;//层内层列表
|
||
char m_CurveName[501];//特征曲线名
|
||
Slf_TABLE_FIELD Table_Field[100];
|
||
char RenName[100][116];
|
||
BYTE Type[100];
|
||
BYTE GetValueMode[100];
|
||
char ZdIndex[100][116];
|
||
char Format[100][116];
|
||
char TableName[100][116];
|
||
};
|
||
|
||
struct jiegutable_struct
|
||
{
|
||
int no;
|
||
float sdep;
|
||
float thick;
|
||
};
|
||
|
||
class /*WELLSECTION_EXPORT*/ CQtWindowWellSection: public QMainWindow/* : public CVecWindow*/
|
||
{
|
||
Q_OBJECT
|
||
public:
|
||
CQtWindowWellSection();
|
||
virtual ~CQtWindowWellSection();
|
||
void slotRemoveWell();
|
||
// //参见CVecWindow::GetWindowConfig
|
||
// virtual void GetWindowConfig( EWindowFlag &WindowFlag,CVecSceneManager*&pSceneManager,
|
||
// QVector<sUIBuilder>&vUIBuilder,CBaseObject *&pDefaultShowObject,
|
||
// QVector<QUuid> &vViewCommandID,osg::Vec4f& backgroundColor,bool bForDebugData );
|
||
|
||
//参见CVecWindow::InitBeforShow
|
||
// virtual void InitBeforShow(bool bCompositeWindow);
|
||
// virtual void AfterOpenWindow();
|
||
// virtual void UpdateObject(eUpdateEvent e,CObjectEventParam *pEventParam =NULL,QVariant vtPropertyValue=QVariant());
|
||
double GetDepByPos(double x,double y);
|
||
|
||
//窗口默认设定pick模式
|
||
void PickFirst();
|
||
// virtual void focusInEvent ( QFocusEvent * event);
|
||
//virtual void focusOutEvent ( QFocusEvent * event);
|
||
// void AddDataDrawObject(QVector<CObjWellTrack*> &welltracks,CWellSectionWindowDocument *pDoc,CObjWellTrack*pWellTrack,CObjWell *well,CBaseObject*objfromplugin);
|
||
protected:
|
||
/**
|
||
* @brief 重载该函数来生成一个支持两个垂直滚动条的Viewer
|
||
*/
|
||
// virtual CVecViewer* CreateViewer();
|
||
void OnListBedValue(QString m_csWellName,QString m_OGTableName);
|
||
void CreateTattle(QString m_csWellName,QString m_OGTableName,QString OutTableName,QList<float>& sdep,QList<float>& edep);
|
||
|
||
public slots:
|
||
// void slotNewDataAndDraw();//
|
||
void slotListData(CObjWellLog *pLog);
|
||
void slotZoneListData(CObjWellLog *pLog);
|
||
void slotSetListTableStruct();
|
||
// void slotSetMegCurve();
|
||
// void slotSetOtherMegCurve();
|
||
// void slotSetStandardMegCurve();
|
||
|
||
// void slotSetShiftCurve(int type);
|
||
// void slotSetOtherShiftCurve(int type);
|
||
// void slotSetStandardCurve(int type);
|
||
void slotReFreshZoneListData();
|
||
// void slotSetShiftCurve();
|
||
// void slotSetOtherShiftCurve();
|
||
// void slotSetStandardCurve();
|
||
// void slotChangeAllCurves();
|
||
// void slotMoveAllCurves();
|
||
// void slotCardMoveCurves();
|
||
// void slotClearShiftZonePoint();
|
||
// void slotClearShiftZonePoint0();
|
||
// void slotExecuteDepthShifting();
|
||
// void slotExecuteDepthAutoComp();
|
||
// void slotDepthMerge();
|
||
// void slotDepthScrMerge();
|
||
// void slotClearStandardShift();
|
||
// void slotClearShiftCurves();
|
||
// void slotClearShiftCurve(CObjWellLog *pLogt);
|
||
|
||
// void slotClearStandardMeg();
|
||
// void slotClearMegCurves();
|
||
// void setTablePointValue(float dep);
|
||
|
||
// void slotClearStandardShift(int type);
|
||
// void slotClearShiftCurves(int type);
|
||
// void slotSetJoinTool();
|
||
// void slotSetShiftTool();
|
||
// void slotRun();
|
||
// void onCurrentLineHighLight();
|
||
// void slotReplace();
|
||
// void slotJieguChangeRun();
|
||
// void slotJieguChangeOK();
|
||
// void slotJieguReFresh();
|
||
// void slotCardRun();
|
||
// void slotDepthCheck();
|
||
// void slotCardSave();
|
||
// void slotSetDep();
|
||
// void slotCheckCCLDepthShift();
|
||
void onTimer();
|
||
public:
|
||
// double getXGeoFromOSGGlobal(CObjWellTrack*m_pWellTrack,double xOSGGlobal);
|
||
// double getYGeoFromOSGGlobal(CObjWellTrack*m_pWellTrack,double yOSGGlobal);
|
||
// double getYGeoNormalFromPixel(CObjWellTrack*m_pWellTrack,double y);
|
||
// double getYOSGGlobalFromPixel(CObjWellTrack*m_pWellTrack,double y);
|
||
// QRectF getLineRangeRectOSGGLobal(CObjWellTrack*m_pWellTrack);
|
||
// double getXOSGGlobalFromPixel(CObjWellTrack*m_pWellTrack,double x);
|
||
// QVector<QPointF> SetLinePoint(CWellSectionWindowDocument *pDoc,CObjWellTrack*m_pWellTrack,CurveLine *pLine,QRectF lineRangeRect);
|
||
// virtual void UpdateHUD();
|
||
// void updateLines(CObjWellTrack*m_pWellTrack);
|
||
void SetCLLDepthShift();
|
||
QTextEdit *pTDialog;
|
||
QLineEdit *spinbox1;
|
||
QLineEdit *spinbox2;
|
||
QLineEdit *spinbox3;
|
||
// QList<CObjWellLog*> m_LOGS;
|
||
QDialogButtonBox *m_ButtonBox;
|
||
int recordnum;
|
||
int *record;
|
||
float *thicks;
|
||
struct jiegutable_struct *jiegudtat,*jiegudtatshift;
|
||
int*pairno;
|
||
int jiegunum;
|
||
QTimer *m_clockTimer;
|
||
LIST_TABLE_INF m_ListTableInf;
|
||
void OnListTableInf(QString m_ParFileName);
|
||
|
||
};
|
||
|
||
// END_OSGGRAPHICS_NAMESPACE
|
||
#endif // OSGCROSSPLOTWINDOW_H
|