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.
197 lines
6.8 KiB
C++
197 lines
6.8 KiB
C++
/**************************************************************************************
|
|
多井剖面特征类
|
|
**************************************************************************************/
|
|
|
|
#ifndef MW_SECTIONFEATURE_H
|
|
#define MW_SECTIONFEATURE_H
|
|
#pragma once
|
|
class AFX_EXT_CLASS CMultiWellSectionFeature
|
|
{
|
|
public:
|
|
CMultiWellSectionFeature(void);
|
|
~CMultiWellSectionFeature(void);
|
|
|
|
public:
|
|
//图件特征
|
|
int m_nAlcID;
|
|
DWORD m_nWellLinkStyle; //井间层连接样式 0-曲线道外连接 1-曲线道内连接 2-分层道边缘连接 16-剖面不外延
|
|
enum WellLinkStyleFlags
|
|
{
|
|
WellLinkStyleOut = 0x0000, // 曲线道外(井外)连接
|
|
WellLinkStyleCurveIn = 0x0001, // 曲线道内连接
|
|
WellLinkStyleLayerBounds = 0x0002, // 解释分层道边缘连接
|
|
WellLinkStyleStratiBounds = 0x0004, // 地层道边缘连接
|
|
WellLinkStyleCenter = 0x0008, // 井柱中心连接
|
|
WellLinkStyleAll =WellLinkStyleOut|WellLinkStyleCurveIn|WellLinkStyleLayerBounds|WellLinkStyleStratiBounds|WellLinkStyleCenter,
|
|
};
|
|
|
|
DWORD m_nBendExtendStyle; //连层延伸式样
|
|
enum BendExtendStyleFlags
|
|
{
|
|
BendExtendNo = 0x0000, //不延伸
|
|
BendExtendLevelLeft = 0x0001, //水平左延伸
|
|
BendExtendLevelRight = 0x0002, //水平右延伸
|
|
BendExtendTrendLeft = 0x0004, //趋势左延伸
|
|
BendExtendTrendRight = 0x0008, //趋势右延伸
|
|
BendExtendLeftAll = BendExtendLevelLeft|BendExtendTrendLeft,
|
|
BendExtendRightAll = BendExtendLevelRight|BendExtendTrendRight,
|
|
};
|
|
|
|
DWORD m_nLayerMarkStyle; //层标注样式 0-气泡样式标注 1-饼图样式标注
|
|
DWORD m_nBendFillStyle; //井间层填充方案 0-单色填充 1-双色填充
|
|
DWORD m_nLayerTraceStyleFlags; //分层道绘制样式 0-不绘制边线 1-绘制左边线 2-绘制上边线 4-绘制右边线 8-绘制下边线 11-仅绘制左边线
|
|
//14-仅绘制右边线 15-绘制全部边线
|
|
enum LayerTraceStyleFlags
|
|
{
|
|
TraceStyleFlagNoLine = 0x0000, //
|
|
TraceStyleFlagLeftLine = 0x0001, //
|
|
TraceStyleFlagTopLine = 0x0002, //
|
|
TraceStyleFlagRightLine = 0x0004, //
|
|
TraceStyleFlagBottomLine = 0x0008,
|
|
TraceStyleFlagOnlyLeftLine = TraceStyleFlagBottomLine|TraceStyleFlagTopLine|TraceStyleFlagLeftLine,
|
|
TraceStyleFlagOnlyRightLine = TraceStyleFlagBottomLine|TraceStyleFlagTopLine|TraceStyleFlagRightLine,
|
|
TraceStyleFlagAllLine = TraceStyleFlagBottomLine|TraceStyleFlagTopLine|TraceStyleFlagLeftLine|TraceStyleFlagRightLine
|
|
};
|
|
DWORD m_nDepthTraceStyleFlags; //分层道绘制样式 0-不绘制边线 1-绘制左边线 2-绘制上边线 4-绘制右边线 8-绘制下边线 11-仅绘制左边线
|
|
//14-仅绘制右边线 15-绘制全部边线
|
|
|
|
enum DepthLayerTraceStyleFlags
|
|
{
|
|
DepthTraceStyleFlagNoLine = 0x0000, //
|
|
DepthTraceStyleFlagLeftLine = 0x0001, //
|
|
DepthTraceStyleFlagTopLine = 0x0002, //
|
|
DepthTraceStyleFlagRightLine = 0x0004, //
|
|
DepthTraceStyleFlagBottomLine = 0x0008,
|
|
DepthTraceStyleFlagOnlyLeftLine = DepthTraceStyleFlagBottomLine|DepthTraceStyleFlagTopLine|DepthTraceStyleFlagLeftLine,
|
|
DepthTraceStyleFlagOnlyRightLine = DepthTraceStyleFlagBottomLine|DepthTraceStyleFlagTopLine|DepthTraceStyleFlagRightLine,
|
|
DepthTraceStyleFlagAllLine = DepthTraceStyleFlagBottomLine|DepthTraceStyleFlagTopLine|DepthTraceStyleFlagLeftLine|DepthTraceStyleFlagRightLine
|
|
};
|
|
|
|
DWORD m_nWellPortDepthMethod;//井口绘制方式
|
|
enum WellPortDepthMethodFlags
|
|
{
|
|
WellPortDepthMethodAuto = 0x0000,//自动
|
|
WellPortDepthMethodWellDepth = 0x0001,//井深
|
|
WellPortDepthMethodVerticalDepth = 0x0002,//垂深
|
|
};
|
|
|
|
DWORD m_nWellStyle; /////井绘制式样
|
|
enum WellStyleFlags
|
|
{
|
|
WellStyleFlagsSimple = 0x0000, //简单式样
|
|
WellStyleFlagsDividLine = 0x0001, //分割线式样
|
|
WellStyleFlagsComplete = 0x0002, //完整式样
|
|
WellStyleFlagsAll = WellStyleFlagsSimple|WellStyleFlagsDividLine|WellStyleFlagsComplete,
|
|
};
|
|
|
|
BOOL m_bLayoutGrid; //页面是否显示布局网格
|
|
BOOL m_bDrawOutLayerBend; //是否绘制连层外框
|
|
BOOL m_bDepthCalcuMark; //是否按深度道计算水平距离
|
|
BOOL m_bVirtualPrint; //是否显示虚井
|
|
int m_iFillBrushScale; //充填图案比例
|
|
CRect8 m_rectMargin; //页边距范围
|
|
CRect m_rectPage; //页面范围
|
|
double m_fTrackTitlePos; //图道标题位置
|
|
double m_fWellTitleHeight; //井标题高度
|
|
double m_fBendLeftExtend; //边缘井向左延伸长度
|
|
double m_fBendRightExtend; //边缘井向右延伸长度
|
|
|
|
//Fence新增的特征
|
|
int m_nAngleRotate; //旋转角度
|
|
int m_nAngleDownLook; //俯视角度
|
|
int m_nTransCurveFill; //曲线填充透明度
|
|
int m_nSaturationBendFill; //连层填充色饱和度
|
|
public:
|
|
|
|
//开关变量值
|
|
void SetWellLinkStyle(DWORD flags);
|
|
void SetWellLinkOut(BOOL bFlag);
|
|
void SetWellLinkCurveIn(BOOL bFlag);
|
|
void SetWellLinkLayerBounds(BOOL bFlag);
|
|
void SetWellLinkStratiBounds(BOOL bFlag);
|
|
void SetWellLinkCenter(BOOL bFlag);
|
|
|
|
DWORD GetWellLinkStyle();
|
|
BOOL IsWellLinkOut();
|
|
BOOL IsWellLinkCurveIn();
|
|
BOOL IsWellLinkLayerBounds();
|
|
BOOL IsWellLinkStratiBounds();
|
|
BOOL IsWellLinkCenter();
|
|
|
|
void SetBendExtendStyle(DWORD flags);
|
|
DWORD GetBendExtendStyle();
|
|
|
|
void SetBendExtendLeftLevel(BOOL bFlag);
|
|
void SetBendExtendLeftTrend(BOOL bFlag);
|
|
void SetBendExtendRightLevel(BOOL bFlag);
|
|
void SetBendExtendRightTrend(BOOL bFlag);
|
|
|
|
BOOL IsBendExtendLeftLevel();
|
|
BOOL IsBendExtendLeftTrend();
|
|
BOOL IsBendExtendRightLevel();
|
|
BOOL IsBendExtendRightTrend();
|
|
|
|
void SetDepthTraceStyleFlags(DWORD flags);
|
|
void SetDepthNoLine(BOOL bFlag);
|
|
void SetDepthLeftLine(BOOL bFlag);
|
|
void SetDepthTopLine(BOOL bFlag);
|
|
void SetDepthRightLine(BOOL bFlag);
|
|
void SetDepthBottomLine(BOOL bFlag);
|
|
void SetDepthOnlyLeftLine(BOOL bFlag);
|
|
void SetDepthOnlyRightLine(BOOL bFlag);
|
|
void SetDepthOnlyAllLine(BOOL bFlag);
|
|
|
|
DWORD GetDepthTraceStyleFlags();
|
|
BOOL IsDepthNoLine();
|
|
BOOL IsDepthLeftLine();
|
|
BOOL IsDepthTopLine();
|
|
BOOL IsDepthRightLine();
|
|
BOOL IsDepthBottomLine();
|
|
BOOL IsDepthOnlyLeftLine();
|
|
BOOL IsDepthOnlyRightLine();
|
|
BOOL IsDepthOnlyAllLine();
|
|
|
|
|
|
void SetLayerTraceStyleFlags(DWORD flags);
|
|
void SetNoLine(BOOL bFlag);
|
|
void SetLeftLine(BOOL bFlag);
|
|
void SetTopLine(BOOL bFlag);
|
|
void SetRightLine(BOOL bFlag);
|
|
void SetBottomLine(BOOL bFlag);
|
|
void SetOnlyLeftLine(BOOL bFlag);
|
|
void SetOnlyRightLine(BOOL bFlag);
|
|
void SetOnlyAllLine(BOOL bFlag);
|
|
|
|
DWORD GetLayerTraceStyleFlags();
|
|
BOOL IsNoLine();
|
|
BOOL IsLeftLine();
|
|
BOOL IsTopLine();
|
|
BOOL IsRightLine();
|
|
BOOL IsBottomLine();
|
|
BOOL IsOnlyLeftLine();
|
|
BOOL IsOnlyRightLine();
|
|
BOOL IsOnlyAllLine();
|
|
|
|
void SetWellPortMethod(DWORD flags);
|
|
void SetWellPortMethodAuto(BOOL bFlag);
|
|
void SetWellPortMethodWellDepth(BOOL bFlag);
|
|
void SetWellPortMethodVerticalDepth(BOOL bFlag);
|
|
|
|
DWORD GetWellPortMethod();
|
|
BOOL IsWellPortMethodAuto();
|
|
BOOL IsWellPortMethodWellDepth();
|
|
BOOL IsWellPortMethodVerticalDepth();
|
|
|
|
void SetWellStyle(DWORD flags);
|
|
void SetWellStyleSimple(BOOL bFlag);
|
|
void SetWellStyleDividLine(BOOL bFlag);
|
|
void SetWellStyleComplete(BOOL bFlag);
|
|
|
|
DWORD GetWellStyle();
|
|
BOOL IsWellStyleSimple();
|
|
BOOL IsWellStyleDividLine();
|
|
BOOL IsWellStyleComplete();
|
|
|
|
void Serialize(CArchive& ar, const short &ver);
|
|
};
|
|
#endif |