/** * @file QtWindowWellSection.h * @brief well section 窗口 插件,包括单井,多井窗口 * @date 2014-5-26 * @author: liyonggang */ #ifndef CQTWINDOWWELLSECTION__H #define CQTWINDOWWELLSECTION__H #pragma warning( push ,0) #include #include "slf.h" #include #include "BaseObject.h" #include "ObjWelllog.h" // #include "VecWindow.h" #include "List_Table_Inf.h" // #include "WellSectionExport.h" // #include "ObjWellTrack.h" // #include "WellSectionWindowDocument.h" #include #include #pragma warning( pop) // BEGIN_OSGGRAPHICS_NAMESPACE #pragma execution_character_set("utf-8") #pragma warning( push ,0) #pragma warning( pop ) 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&vUIBuilder,CBaseObject *&pDefaultShowObject, // QVector &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 &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& sdep,QList& 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(CObjWellLog *pLog); // 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(CObjWellLog *pLog, 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 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 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