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.
59 lines
1.3 KiB
C++
59 lines
1.3 KiB
C++
#pragma once
|
|
|
|
#include "GDFLOGPEN.h"
|
|
|
|
class CCurveEx;
|
|
class CXyDC;
|
|
class CFaultLineConMgr;
|
|
|
|
/* @brief 断层线 */
|
|
class AFX_EXT_CLASS CFaultLine : public CBaseObject
|
|
{
|
|
public:
|
|
CFaultLine(void);
|
|
~CFaultLine(void);
|
|
|
|
/// 重载CBaseObject函数
|
|
virtual void Serialize(CArchive& ar, const short &ver);
|
|
virtual int Read(CFile& fr, const short& ver);
|
|
virtual void Write(CFile& fw, const short& ver);
|
|
|
|
virtual CRect8 GetRect(void);
|
|
virtual void GetRange(CRect8& range);
|
|
virtual BOOL IsInRange(CRect8& range);
|
|
|
|
virtual void Offset(double dx, double dy);
|
|
virtual void ScaleCoor(double xs, double ys, double dx, double dy);
|
|
virtual void Rotate(double xs, double ys, double angle);
|
|
|
|
/* @brief 根据曲线生成断层线 */
|
|
void Create(vector<CCurveEx *> &curves);
|
|
|
|
void Draw(CXyDC &dc);
|
|
|
|
void SetLeftFault(double dValue);
|
|
double GetLeftFault();
|
|
|
|
void SetRightFault(double dValue);
|
|
double GetRightFault();
|
|
|
|
BOOL IsBlocked();
|
|
void SetBlocked(BOOL bValue);
|
|
|
|
NGraph::GDFLOGPEN &GetLinePen();
|
|
void SetLinePen(NGraph::GDFLOGPEN &pen);
|
|
|
|
CCurveEx *GetCurveImp();
|
|
|
|
protected:
|
|
double m_dLeftFault;
|
|
double m_dRightFault;
|
|
BOOL m_IsBlocked; ///< 是否为封堵断层
|
|
|
|
CCurveEx *m_pCurveImp; ///< 用于保存断层上点的对象
|
|
GDFLOGPEN m_penLine;
|
|
CFaultLineConMgr *m_pFaultLineConMgr; ///< 与断层关联的曲线关系管理器
|
|
|
|
};
|
|
|