|
|
|
|
|
#pragma once
|
|
|
|
|
|
|
|
|
|
|
|
#include "WellPole.h"
|
|
|
|
|
|
|
|
|
|
|
|
// б<><D0B1><EFBFBD><EFBFBD>
|
|
|
|
|
|
/*
|
|
|
|
|
|
<EFBFBD><EFBFBD><EFBFBD><EFBFBD>б<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͷʱ,<EFBFBD><EFBFBD>ͨ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>תDC<EFBFBD><EFBFBD>ʵ<EFBFBD>ֵ<EFBFBD>,<EFBFBD><EFBFBD><EFBFBD><EFBFBD>m_HeadLineAngle<EFBFBD>ĽǶ<EFBFBD><EFBFBD><EFBFBD>ת ggff,(Ŀǰ<EFBFBD><EFBFBD>ת<EFBFBD>ĵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ĺ켣<EFBFBD><EFBFBD>ʼ<EFBFBD><EFBFBD>)
|
|
|
|
|
|
*/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
class CInclinedTrack;
|
|
|
|
|
|
class AFX_EXT_CLASS CInclinedWellPole : public CWellPole
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
|
|
public:
|
|
|
|
|
|
CInclinedWellPole();
|
|
|
|
|
|
CInclinedWellPole(const CRect8& position);
|
|
|
|
|
|
virtual ~CInclinedWellPole();
|
|
|
|
|
|
|
|
|
|
|
|
//<2F><>¡<EFBFBD><C2A1><EFBFBD>麯<EFBFBD><E9BAAF>
|
|
|
|
|
|
virtual void* CloneElement(void);
|
|
|
|
|
|
|
|
|
|
|
|
//ѡ<><D1A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӧ<EFBFBD><D3A6><EFBFBD><EFBFBD>
|
|
|
|
|
|
virtual void MoveTo(CRect8& position);
|
|
|
|
|
|
virtual void MoveHandleTo(int nHandle, CPoint2D point);
|
|
|
|
|
|
virtual void MoveChildren();//<2F>ƶ<EFBFBD><C6B6>Ӷ<EFBFBD><D3B6><EFBFBD><EFBFBD><EFBFBD>λ<EFBFBD><CEBB>
|
|
|
|
|
|
virtual BOOL Intersects(const CRect8& rect, double dHandleSize);
|
|
|
|
|
|
virtual void Serialize(CArchive& ar, const short &ver);
|
|
|
|
|
|
|
|
|
|
|
|
//virtual void ComputeTrajectory(void);
|
|
|
|
|
|
protected:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
public:
|
|
|
|
|
|
//<2F><>д<EFBFBD><D0B4>Χ<EFBFBD><CEA7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϵ<EFBFBD>ͼ<EFBFBD><CDBC><EFBFBD><EFBFBD>Χ
|
|
|
|
|
|
//virtual void GetRange(CRect8& range);
|
|
|
|
|
|
// <20><><EFBFBD>ƾ<EFBFBD>ͷ
|
|
|
|
|
|
virtual void DrawWellHead(CXyDC* pDC);
|
|
|
|
|
|
//<2F><><EFBFBD>ƾ<EFBFBD><C6BE><EFBFBD><EFBFBD>߿<EFBFBD>
|
|
|
|
|
|
virtual void DrawWellBodyLine(CXyDC* pDC);
|
|
|
|
|
|
|
|
|
|
|
|
virtual void DrawWellBody(CXyDC* pDC);
|
|
|
|
|
|
// <20><><EFBFBD>ƾ<EFBFBD><C6BE>켣<EFBFBD><ECBCA3><EFBFBD><EFBFBD>
|
|
|
|
|
|
//virtual void DrawTrajectory(CXyDC* pDC);
|
|
|
|
|
|
virtual void Draw(CXyDC* pDC);
|
|
|
|
|
|
|
|
|
|
|
|
//<2F><><EFBFBD>㾮<EFBFBD><E3BEAE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ĵ<EFBFBD><C4B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>С
|
|
|
|
|
|
virtual void CalculateSize(CPoint2D point);
|
|
|
|
|
|
|
|
|
|
|
|
// <20><><EFBFBD><EFBFBD>ij<EFBFBD><C4B3>б<EFBFBD><D0B1><EFBFBD><EFBFBD>Ӧ<EFBFBD>Ĺ켣(<28>õ<EFBFBD><C3B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ˮƽλ<C6BD><CEBB>)
|
|
|
|
|
|
//void ComputeTrajectory(double dep, double &vdep, double &level);
|
|
|
|
|
|
|
|
|
|
|
|
//void ComputeTraceArrange(double dep, double &vdep, double &level);
|
|
|
|
|
|
|
|
|
|
|
|
//void ComputeTraceArrange(void);
|
|
|
|
|
|
|
|
|
|
|
|
//void ComputePolyLeftandRight(CPoint2D pt1, CPoint2D pt2, CPoint2D& leftpt, CPoint2D& rightpt, double width, double precent);
|
|
|
|
|
|
|
|
|
|
|
|
//void SortTrack(CTrackObj* pTheMovingTrackObj);
|
|
|
|
|
|
//void SortTrack(CArray<Struct_TrackSort, Struct_TrackSort> &arrayTrackSort);
|
|
|
|
|
|
|
|
|
|
|
|
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʼ<EFBFBD><CABC><EFBFBD>Ⱥͽ<C8BA><CDBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȶ<EFBFBD>Ӧ<EFBFBD><D3A6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>λ<EFBFBD><CEBB>,<2C><>m_topDepV, m_topLevel;<3B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ComputeTrace<63><65><EFBFBD><EFBFBD>֮<EFBFBD><D6AE><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 2015-9-16
|
|
|
|
|
|
//void ComputeTopDepAndLevel(void);
|
|
|
|
|
|
|
|
|
|
|
|
//virtual BOOL RemoveSelection();
|
|
|
|
|
|
|
|
|
|
|
|
//double LevelToScreenCX(double dLevel /* ˮƽ<CBAE><C6BD><EFBFBD><EFBFBD>m */);
|
|
|
|
|
|
//double ScreenCXToLevel(double dCX);
|
|
|
|
|
|
//<2F><><EFBFBD><EFBFBD>ͶӰ<CDB6>Ƕ<EFBFBD>,ֵ<><D6B5><EFBFBD><EFBFBD>0-360<36><30>
|
|
|
|
|
|
//void SetProjectionAngle(double dDegree);
|
|
|
|
|
|
//<2F><>ȡ<EFBFBD><C8A1>ǰͶӰ<CDB6>Ƕ<EFBFBD>
|
|
|
|
|
|
//double GetProjectionAngle(void) { return m_dProjectionAngle; }
|
|
|
|
|
|
//CCurveEx* GetTrajectoryDisplayCurve() { return &m_trajectoryCurve; }
|
|
|
|
|
|
|
|
|
|
|
|
// virtual void GetFrameCurve(std::vector<CPoint2D>& curvePts);//ggff
|
|
|
|
|
|
//virtual BOOL IsInRange(CRect8& range);//ggff
|
|
|
|
|
|
/*virtual CPoint2D ReCalculatePoint(CPoint2D point);*/
|
|
|
|
|
|
virtual void GetRange(CRect8& range);
|
|
|
|
|
|
void GetTracksFromOtherWell(CWellPole *pWellObj); //<2F><>һ<EFBFBD>ھ<EFBFBD><DABE>л<EFBFBD><D0BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>еĵ<D0B5>,<2C><><EFBFBD><EFBFBD><EFBFBD>ݱ<EFBFBD><DDB1><EFBFBD><EFBFBD>Ĺ켣<C4B9><ECBCA3><EFBFBD>¼<EFBFBD><C2BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> (ע<>ⲻ<EFBFBD>Ǹ<EFBFBD><C7B8>Ƶ<EFBFBD>,<2C>Ǵ<EFBFBD>ԭ<EFBFBD><D4AD>ֱ<EFBFBD><D6B1>ժ<EFBFBD><D5AA><EFBFBD><EFBFBD><EFBFBD>ݵ<EFBFBD>)
|
|
|
|
|
|
protected:
|
|
|
|
|
|
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>б<EFBFBD><EFBFBD><EEA3AC>ֵ<EFBFBD><D6B5><EFBFBD>㴦<EFBFBD><E3B4A6>Ӧ<EFBFBD>Ĵ<EFBFBD><C4B4><EFBFBD><EFBFBD><EFBFBD>ʱƽ<CAB1><C6BD>,<2C><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Χ<EFBFBD><CEA7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵʧ<D6B5>ܣ<EFBFBD><DCA3><EFBFBD><EFBFBD><EFBFBD>false 2015-9-16
|
|
|
|
|
|
// bool InterpolateDepVandLevel(double dep, double& depV, double& level);
|
|
|
|
|
|
// // <20>ɾ<EFBFBD><C9BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȣ<EFBFBD>ˮƽλ<C6BD>ƣ<EFBFBD><C6A3><EFBFBD>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD>ȼ<EFBFBD><C8BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ҫ<EFBFBD><D2AA><EFBFBD>Ƶ<EFBFBD><C6B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
// void ComputeDisplayTrajectory();
|
|
|
|
|
|
//
|
|
|
|
|
|
// void GetInclinedWellRange(CRect8 &range, vector<CInclinedTrack*>& trackVec); //<2F>õ<EFBFBD>б<EFBFBD><D0B1><EFBFBD>ķ<EFBFBD>Χ
|
|
|
|
|
|
//
|
|
|
|
|
|
//
|
|
|
|
|
|
// double m_dProjectionAngle; //ͶӰ<CDB6>Ƕȣ<C7B6>[0,360)<29><>
|
|
|
|
|
|
// CCurveEx m_trajectoryCurve; //<2F><><EFBFBD><EFBFBD><EFBFBD>Ƶľ<C6B5><C4BE>켣<EFBFBD><ECBCA3><EFBFBD><EFBFBD>
|
|
|
|
|
|
//
|
|
|
|
|
|
//
|
|
|
|
|
|
//public:
|
|
|
|
|
|
// GDFLOGPENEXT m_penTrajectory; //<2F>켣<EFBFBD>߱<EFBFBD>
|
|
|
|
|
|
//
|
|
|
|
|
|
// double m_topDepV; //<2F><><EFBFBD>ڶ<EFBFBD>Ӧ<EFBFBD>Ĵ<EFBFBD><C4B4><EFBFBD>
|
|
|
|
|
|
// double m_topLevel; //<2F>뾮<EFBFBD>ڵ<EFBFBD>ˮƽλ<C6BD><CEBB>
|
|
|
|
|
|
//
|
|
|
|
|
|
//
|
|
|
|
|
|
//
|
|
|
|
|
|
//
|
|
|
|
|
|
// int m_nTraceTrackNum; //<2F>켣<EFBFBD><ECBCA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
// ETrackType m_traceTrackType; //<2F>켣<EFBFBD><ECBCA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
// ETrackBorder m_traceTrackBorder; //<2F>켣<EFBFBD><ECBCA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>߽<EFBFBD>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
};
|