You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
nmWATI/Include/mGui/mSubWnd/iSubWndAnalSeg.h

72 lines
1.7 KiB
C++

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

#pragma once
#include "iSubWndAnal.h"
class iWxModelOption;
class iWxModelParameter;
class iAlgModelBase;
class iParaManager;
class iWxWmDataPF;
class ZxTableModel;
class iWxTime;
class iAlgFitBase;
class ZxObjCurve;
class ZxObjPointEx;
class M_SUB_WND_EXPORT iSubWndAnalSeg : public iSubWndAnal
{
Q_OBJECT
public:
explicit iSubWndAnalSeg(QWidget *parent = 0, QString sExt = "");
~iSubWndAnalSeg();
// 配置窗体
virtual void configWnd();
virtual QWidget* initUiMainWx();
// 执行命令:通常来自图形右侧/左侧的工具栏
virtual bool runActionOf(QString sAction);
// 重新调整工具栏
// virtual void reAdjustToolbar(QToolBar*);
// 检测按钮状态Ribbon
virtual bool checkCmdEnable(bool &b, \
QString sName, int nID, \
bool bLicensed);
// 由子窗体创建RunOption
virtual iWxRunOptionStd* buildWxRunOption();
virtual void finalDeals();
protected:
void _dealFuzzy();
void fuzzyHitPoints(ZxObjPointEx* pPt);
bool getCrossXOfHitPoints(QVector<ZxObjPointEx*>& vecHitPts, double& fX);
bool getFuzzyFlowXBy(double xC, double& xF);
void removeFirstOne();
bool autoAlignP(double xC, double xF);
// 对于流动段,在此处考虑模拟选中最后一个流动段
// 有判断条件的情况下TODO 20240819
virtual void simuHitLastSeg(); //模拟点击最后一个流动段
public slots:
// 添加点
void slotCmdHitPoint(PlotOperationMode o, \
const QPointF& pt, \
bool& b);
void slotHitPointMoved();
private:
QVector<ZxObjPointEx*> m_vecHitPts;
};