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.
nmWTAI-Platform/Include/nmNum/nmPlot/nmObjRoundOutline.h

75 lines
1.8 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 "nmObjRound.h"
#include "nmDefines.h"
#include "nmPlot_global.h"
#include "nmDataOutline.h"
// 数值试井绘图对象(圆形)
class NM_PLOT_EXPORT nmObjRoundOutline : public nmObjRound
{
Q_OBJECT
ZX_DECLARE_DYNAMIC
public:
nmObjRoundOutline();
nmObjRoundOutline(const QString& sName, \
ZxSubAxisX* pAxisX, \
ZxSubAxisY* pAxisY);
~nmObjRoundOutline();
// 设置初始参数
virtual void init(const QString& sName, \
ZxSubAxisX* pAxisX, \
ZxSubAxisY* pAxisY) override;
// 设置Tools
virtual void initTools() override;
public:
// 击中
virtual bool hitTest(const QPointF& pt) override;
// 具体击中实现的函数,单纯击中,不做选项的改变
// nOption用int是因为Rect类的击中选项不一致
// nOption为负值表示未击中此时返回false
virtual bool _runHitTest(const QPointF& pt, \
int& nOption, int& nSubIndex) override;
public:
// 属性填充内容
virtual void fillPtyPano(IxPtyPano* sheet) override;
virtual void paintBack(QPainter* painter, \
const ZxPaintParam& param) override;
// 设置所有的Pos外界调用
virtual void setAllPos(QVector<QPointF> vecPoss, QVector<int>* pVecIndexes = NULL) override;
// 创建后被调用
virtual void afterCreated() override;
// 删除圆形边界数据对象
virtual void removeData() override;
// 当前选中边界的类型
void setCurOutlineFlowType(int);
int getCurOutlineFlowType();
nmDataOutline* getOutlineData() const;
void setOutlineData(nmDataOutline* newOutlineData);
public slots:
// 图元状态改变
void onObjVisibleChanged(bool bIsVisible);
public:
// 边界的压力类型
QVector<int> m_vFlowTypeList;
nmDataOutline* m_outlineData; // 边界数据
};