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/WellBdy/ZxObjBdyLine.h

59 lines
1.4 KiB
C

#pragma once
#include "ZxObjBdyBase.h"
#include "mGuiPlot_global.h"
//边界线
class M_GUI_PLOT_EXPORT ZxObjBdyLine : public ZxObjBdyBase
{
Q_OBJECT
ZX_DECLARE_DYNAMIC
public:
ZxObjBdyLine();
ZxObjBdyLine(const QString& sName,
ZxSubAxisX* pAxisX,
ZxSubAxisY* pAxisY);
~ZxObjBdyLine();
public:
// 封装
virtual void initTools();
virtual void initObj();
//获得数据
void calBdyLineParam(eBdyPosType ePosType, QVector<QPointF>& vecVals);
virtual bool _runHitTest(const QPointF& pt, int& nOption, int& nSubIndex);
virtual bool runMove(const QPointF& pt1, const QPointF& pt2);
//属性
virtual void fillPtyPano(IxPtyPano* sheet);
// 根据pt1--->pt2的偏移获取pt的偏移后的点
// pt1:鼠标Down点pt2鼠标Up点
QPointF offsetPoint(QPointF& pt,
const QPointF& pt1, const QPointF& pt2);
//修改点改变长度
virtual bool calNewPos(QVector<QPointF>& vec, QPointF ptMouse);
//设置边界的距离
void setBdyLineDistance(double f);
double getBdyLineDistance();
//设置边界的位置
void setBdyLinePosType(int nPos);
int getBdyLinePosType();
//移动后设置线的位置
virtual void resetBdyParam();
virtual void paintBack(QPainter* painter,
const ZxPaintParam& param);
protected:
iBdyInfo* getBdyParam();
};