|
|
/**************************************************************************************
|
|
|
文 件 名:ItemAddBend.h
|
|
|
主要功能:
|
|
|
道内层位手工添加bend交互
|
|
|
主要函数列表:
|
|
|
1 virtual BOOL InitPropertyGrid(CXTPPropertyGrid& grid); 初始化属性窗口
|
|
|
2 virtual void OnLButtonDown(UINT nFlags, CPoint point); 鼠标操作
|
|
|
3 virtual void OnLButtonUp(UINT nFlags, CPoint point);
|
|
|
4 virtual void OnLButtonDblClk(UINT nFlags, CPoint point);
|
|
|
5 virtual void OnMouseMove(UINT nFlags, CPoint point);
|
|
|
6 virtual void OnDraw(CXyDC* pXyDC); 绘制辅助手柄
|
|
|
**************************************************************************************/
|
|
|
#pragma once
|
|
|
#include "item.h"
|
|
|
#include "ItemWcsSingleWell.h"
|
|
|
#include "ItemWcsTrackIn.h"
|
|
|
|
|
|
class CBendObj;
|
|
|
namespace NItem
|
|
|
{
|
|
|
class CItemAddBend :
|
|
|
public CItemWellBase
|
|
|
{
|
|
|
public:
|
|
|
CItemAddBend(CSigmaDoc* pDoc);
|
|
|
virtual ~CItemAddBend(void);
|
|
|
|
|
|
virtual void SetDrawObj(CWellBaseObj* pObj) { m_pObj = (CInTrackDepthSegment*)pObj;}
|
|
|
virtual void SetItemWell(CItem* pItem) {m_pItemWell = (CItemWcsSingleWell*)pItem;}//= 0;
|
|
|
//virtual void SetItemSection(CItem* pItem) {m_pItemWell = (CItemWcsSingleWell*)pItem;}//= 0;
|
|
|
virtual CWellBaseObj* GetDrawObj() { return m_pObj; }
|
|
|
|
|
|
/** 绘制辅助手柄 */
|
|
|
virtual void OnDraw(CXyDC* pXyDC,CDC* pDC);
|
|
|
virtual void OnLButtonDown(CDC *pDC, UINT nFlags, CPoint point, int vk);
|
|
|
virtual void OnLButtonUp(CDC *pDC, UINT nFlags, CPoint point, int vk = 0);
|
|
|
virtual void OnLButtonDblClk(UINT nFlags, CPoint point);
|
|
|
virtual int OnMouseMove(CDC *pDC, UINT nFlags, CPoint point);
|
|
|
virtual BOOL OnSetCursor(/*CWnd* pWnd,*/ UINT nHitTest, UINT message);
|
|
|
virtual BOOL OnSetCursor(CPoint pt, int& handle);
|
|
|
//计算新添加bend连层控制点所在直线的左右端点的y值以及左右层的高度
|
|
|
//void ComputeBendPosition(CBendObj* pBend,double &valueLeft,double &valueRight,double &heightLeft,double &heightRight);
|
|
|
void ReBendLeftRightList(CBendObj* pBend);
|
|
|
|
|
|
virtual int DeleteSelection(void);
|
|
|
|
|
|
///** @brief 初始化属性窗口 */
|
|
|
//virtual BOOL InitPropertyGrid(CXTPPropertyGrid& grid);
|
|
|
///** @brief 响应属性框改变消息的函数 */
|
|
|
//virtual BOOL OnGridItemChangeValue(CXTPPropertyGridItem* pItem);
|
|
|
CItemWcsTrackIn* GetLayerItem() { return m_pItemTrackIn; }
|
|
|
protected:
|
|
|
CInTrackDepthSegment * m_pObj;
|
|
|
CItemWcsSingleWell* m_pItemWell;
|
|
|
CItemWcsTrackIn* m_pItemTrackIn;
|
|
|
|
|
|
protected:
|
|
|
void MakeBendForOld(CWellSection* pSection, CWellPole * pWell , UINT nFlags, CPoint point);
|
|
|
void MakeBendForResform(CWellSection* pSection, CWellPole * pWell ,UINT nFlags, CPoint point);
|
|
|
};
|
|
|
}; |