⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 curveunit.h

📁 对测井数据显示、编辑、处理
💻 H
字号:
// CurveUnit.h: interface for the CCurveUnit class.
//
//////////////////////////////////////////////////////////////////////

#if !defined(AFX_CURVEUNIT_H__F877C2D8_DA27_498C_9D82_DE789C14127D__INCLUDED_)
#define AFX_CURVEUNIT_H__F877C2D8_DA27_498C_9D82_DE789C14127D__INCLUDED_

#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000

#include "DataBase.h"

#include "RoadUnit.h"

class CCurveUnit : public CDataBase  
{
private:
	COLORREF		m_corCurve;    //曲线的颜色
	int				m_nCurveWidth;    //曲线的宽度
	int             m_nCurveStyle;    //曲线的线型
	int				m_nXBase;    //曲线的基线X坐标 
	int				m_nYBase;    //曲线的基线Y坐标
	int			  	m_nColWidth;   //曲线栏所占的宽度
	int				m_nColHeight;  //曲线栏的高度
	
	CString			m_strCurveName;
	float			m_fStartDep;  // 定义原始的曲线起始深度
	float			m_fEndDep;	  // 定义原始的曲线结束深度
	float			m_fContDep;  // 定义延拓深度
	float			m_fSampleSpace;
	float           m_fDataMax;
	float			m_fDataMin;
	CArray <float, float> m_arrData;    //曲线数据
public:
	/*  下面定义一些数据接口函数*/
	void		SetColumProperty(int nXBase, int nYBase, int nColWidth, int nColHeight);
	void		SetColumYBase(int nYBase);
	void		SetColumHeight(int nColHeight);
	int			GetXBase();
	int			GetYBase();
	int			GetColWidth();
	int			GetColHeight();
	void		SetCurveProperty(COLORREF corCurve, int nCurveWidth, int nCurveStyle);
	COLORREF	GetCurveColor();
	int			GetCurveWidth();
	int			GetCurveStyle();

	void		SetDataProperty(float fStartDep, float fEndDep, float fSampleSpace);
	float		GetStartDep();
	float		GetEndDep();
	float		GetSampleSpace();

	void		SetDataMaxMin(float fDataMax, float fDataMin);
	float		GetDataMin();
	float		GetDataMax();

	int			AddDataPoint(float fvalue);
	void		SetDataValue(int nIndex, float fValue);
	float		GetDataValue(int nIndex);
	int			GetDataSize();

	void		SetCurveName(CString strCurveName);
	CString		GetCurveName();

	float		GetMeanValue(int nIndex1, int nIndex2); // 得到某一段数据的平均值
	
	float		GetMeanValue(float startDep, float endDep, int nMeanMethod);

	float       GetDepth(int nPosition);

	int			GetXPosition(float fValue);

	COLORREF	GetColorWithValue(float fValue);

	int			GetColorIndex(float fValue);   //通过平均值得到着色索引值

	void		CointuationDepth();// 对测井曲线进行延拓

public:
	/* 下面定义绘图与选中的方法*/
	void		Draw(CDC *pDC);
	COLORREF	GetDrawPenColor();
	BOOL		HitTest(CPoint point);

	/*定义与道的关系接口函数*/
    void		SetRoad(CRoadUnit* pRoadUnit);

	operator = (const CCurveUnit& other);
public:
	CCurveUnit();
	virtual ~CCurveUnit();

};

#endif // !defined(AFX_CURVEUNIT_H__F877C2D8_DA27_498C_9D82_DE789C14127D__INCLUDED_)

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -