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/mGuiPlot/WellMap/ZxObjWmPoint.h

87 lines
2.1 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 "ZxObjPoint.h"
#include "mGuiPlot_global.h"
#include "mAlgDefines.h"
class ZxObjWmData;
class M_GUI_PLOT_EXPORT ZxObjWmPoint : public ZxObjPoint
{
Q_OBJECT
ZX_DECLARE_DYNAMIC
public:
ZxObjWmPoint();
ZxObjWmPoint(const QString& sName,
ZxSubAxisX* pAxisX,
ZxSubAxisY* pAxisY);
~ZxObjWmPoint();
public:
// 辅助信息
virtual void initSubObjs();
virtual void resetOthers();
// 封装
virtual void initTools();
// 设置显示的标识
void setPointTag(QString s);
// 具体击中实现的函数,单纯击中,不做选项的改变
// nOption用int是因为Rect类的击中选项不一致
// nOption为负值表示未击中此时返回false
virtual bool _runHitTest(const QPointF& pt, int& nOption, int& nSubIndex);
// 击中后ButtonUp后的处理
// pt1:鼠标Down点pt2鼠标Up点
virtual bool runMove(const QPointF& pt1, const QPointF& pt2);
// 移动位置后,刷新相关的信息,如距离、角度、长度等
virtual bool reCalInfos();
// 返回数据体
ZxObjWmData* getWmData();
// 在右侧手工改动数据,刷新数据点,m_pData已经改变不予考虑
virtual bool freshWmPosBy(QString sPara, double f);
virtual bool freshWmAboutBy(QString sPara, double f);
signals:
void sigWmInfoChanged(QString sParaBy);
protected:
// 设置图元对象的属性标志
virtual void initFlags();
// 绘制井点
virtual bool drawWellPos(QPainter* painter, QPointF pt);
virtual bool drawWellLine2Center(QPainter* painter, QPointF pt);
public:
virtual void paintBack(QPainter* painter,
const ZxPaintParam& param);
virtual void onSerialize(ZxSerializer* ser);
virtual void onDeserialize(ZxSerializer* ser);
virtual void onLoadTempl(ZxSerializer* ser);
virtual void onSaveTempl(ZxSerializer* ser);
virtual void fillPtyPano(IxPtyPano* sheet);
public:
protected:
QColor m_clrFillUnvalid; //无效时填充颜色
QColor m_clrOuter; //外边界颜色
ZxObjWmData* m_pData;
};