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.

457 lines
18 KiB
C

1 month ago
/**************************************************************************************
<EFBFBD><EFBFBD>Ҫ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>:
<EFBFBD><EFBFBD><EFBFBD>߻<EFBFBD><EFBFBD><EFBFBD>
<EFBFBD><EFBFBD>Ҫ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>б<EFBFBD><EFBFBD><EFBFBD>
1 <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>߶<EFBFBD><EFBFBD><EFBFBD>
virtual void CalculateSize(CPoint2D point);
2 <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ҿ̶<EFBFBD>
void DrawTitleLeftAndRightContent(CXyDC* pDC, CString left, CString right, GDFLOGFONT logfont,CRect8 rect, GDFLOGBRUSH brush);
3 <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͷ
virtual void DrawCurveHeadLine(CXyDC* pDC);
4 <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͷ
virtual void DrawTrackHead(CXyDC* pDC);
5 <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͷ
virtual void DrawActiveCurveHead(CXyDC* pDC);
6 <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
virtual void DrawCurve(CXyDC* pDC);
7 <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
virtual void DrawCurveLine(CXyDC* pDC,CCurveEx& curve,GDFLOGPEN logpen);
8 <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
virtual void DrawCurveLineSeg(CXyDC* pDC,CCurveEx& curve,int nStart,int nPoint,GDFLOGPEN logpen);
9 <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>е<EFBFBD>ɢ<EFBFBD><EFBFBD>
virtual void DrawDot(CXyDC* pDC,CCurveEx& curve);
10 <EFBFBD><EFBFBD>ɢ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
virtual void DrawDotCurve(CXyDC* pDC,CCurveEx& curve,GDFLOGPEN logpen);
11 <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
virtual void DrawStep(CXyDC* pDC,CCurveEx& curve,GDFLOGPEN logpen);
12 <EFBFBD><EFBFBD><EFBFBD><EFBFBD>״<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
virtual void DrawRod(CXyDC* pDC,CCurveEx& curve,CRect8 rect,GDFLOGPEN logpen);
13 <EFBFBD><EFBFBD><EFBFBD><EFBFBD>״<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͼ
virtual void DrawRodCurve(CXyDC* pDC,CCurveEx& curve,CRect8 rect,GDFLOGPEN logpen);
14 <EFBFBD><EFBFBD><EFBFBD>ߵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
virtual void DrawFillCurve(CXyDC* pDC);
15 <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
virtual void DrawFill(CXyDC* pDC);
16 <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
virtual void DrawGrid(CXyDC* pDC);
**************************************************************************************/
#ifndef TRACKCURVEOBJBASE_H
#define TRACKCURVEOBJBASE_H
#pragma once
#include "InclinedTrack.h"
#include "Data/WellDataObj.h"
struct DiscretreDataStuct
{
float depth;
float value;
};
class AFX_EXT_CLASS CTrackCurveBase : public CInclinedTrack
{
protected:
void Init();
public:
CTrackCurveBase();
virtual ~CTrackCurveBase();
CTrackCurveBase(const CRect8& position);
1 month ago
CLONE_WELLOBJECT(CTrackCurveBase)
virtual void operator=(CTrackCurveBase& object);
1 month ago
public:
//float* m_curve_value; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//float* m_curve_depth; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//int m_sample_count; // <20><><EFBFBD>ߵIJ<DFB5><C4B2><EFBFBD><EFBFBD><EFBFBD>
int m_nSdep; // <20><>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD><EFBFBD>±<EFBFBD>
int m_nEdep; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>±<EFBFBD>
int m_curve_num; // <20><><EFBFBD><EFBFBD>ʩ<EFBFBD><CAA9><EFBFBD><EFBFBD>
CString m_curve_unit; // <20><><EFBFBD>ߵ<EFBFBD>λ
double m_fRlev; // <20><><EFBFBD>ߵIJ<DFB5><C4B2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
double m_fSdep; // <20><><EFBFBD>ߵ<EFBFBD><DFB5><EFBFBD>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD>
double m_fEdep; // <20><><EFBFBD>ߵĽ<DFB5><C4BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
int m_width; // <20><><EFBFBD><EFBFBD>ռ<EFBFBD><D5BC><EFBFBD><EFBFBD><EFBFBD>İٷ<C4B0><D9B7><EFBFBD>
int m_offset; // <20><><EFBFBD>ߵ<EFBFBD>ƫ<EFBFBD><C6AB><EFBFBD><EFBFBD><EFBFBD>ٷ<EFBFBD><D9B7><EFBFBD>
double m_curve_left; // <20><><EFBFBD>ߵ<EFBFBD><DFB5><EFBFBD><EFBFBD><EFBFBD>
double m_curve_right; // <20><><EFBFBD>ߵ<EFBFBD><DFB5>ҿ<EFBFBD>
double m_fMajorSpace; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̶ȼ<CCB6><C8BC><EFBFBD>
double m_fMinorSpace; // <20><><EFBFBD>ȴο̶ȼ<CCB6><C8BC><EFBFBD>
int m_nMajorSpace; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̶<EFBFBD><CCB6><EFBFBD>
int m_nMinorSpace; // <20><><EFBFBD>򸱿̶<F2B8B1BF><CCB6><EFBFBD>
GDFLOGPENEXT m_penMajorGrid; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
GDFLOGPENEXT m_penMinorGrid; // <20>ο<EFBFBD><CEBF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
GDFLOGFONTEXT m_fontHeadMark; // <20>̶<EFBFBD><CCB6><EFBFBD><EFBFBD><EFBFBD>
GDFLOGPENEXT m_penCurve; // <20><><EFBFBD>߻<EFBFBD><DFBB><EFBFBD>
GDFLOGPENEXT m_penRod; // <20><>״ͼ<D7B4><CDBC><EFBFBD><EFBFBD>
GDFLOGPENEXT penDot; // dot<6F>ʣ<EFBFBD><CAA3><EFBFBD><EFBFBD><EFBFBD>Ҫ<EFBFBD><D2AA><EFBFBD><EFBFBD>
double m_dHeadMarkPos; // ͼͷ<CDBC><CDB7>עλ<D7A2><CEBB>
double m_dHeadTitlePos; // ͼ<><CDBC><EFBFBD><EFBFBD>λ<EFBFBD><CEBB>
CString m_strFillSymbol; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
CString m_strFillSideCurve; // <20><><EFBFBD><EFBFBD><EFBFBD>߽<EFBFBD><DFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
double m_fFillSideValue; // <20><><EFBFBD><EFBFBD><EFBFBD>߽<EFBFBD><DFBD><EFBFBD>ֵ
COLORREF m_fillClr; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɫ
COLORREF m_gradientLeftClr; // <20><><EFBFBD><EFBFBD>ɫ<EFBFBD><C9AB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɫ
COLORREF m_gradientRightClr; // <20><><EFBFBD><EFBFBD>ɫ<EFBFBD><C9AB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɫ
COLORREF m_gradientMiddleClr; // <20><><EFBFBD><EFBFBD>ɫ<EFBFBD><C9AB><EFBFBD><EFBFBD><EFBFBD>м<EFBFBD><D0BC><EFBFBD>ɫ
CString m_strGradientCurve; // <20><><EFBFBD><EFBFBD>ɫ<EFBFBD><C9AB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
double m_fGradientLeft; // <20><><EFBFBD><EFBFBD>ɫ<EFBFBD><C9AB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ
double m_fGradientRight; // <20><><EFBFBD><EFBFBD>ɫ<EFBFBD><C9AB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ
//<2F><><EFBFBD><EFBFBD>ɢ<EFBFBD><C9A2><EFBFBD><EFBFBD>ʽʱ<CABD><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
COLORREF m_dotBorderClr; // <20><><EFBFBD>ߵ<EFBFBD><DFB5>߿<EFBFBD><DFBF><EFBFBD>ɫ
COLORREF m_dotFillClr; // <20><><EFBFBD>ߵ<EFBFBD><DFB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɫ
CSize m_dotSize; // <20><><EFBFBD>߷<EFBFBD><DFB7>Ŵ<EFBFBD>С
CString m_strDotSymbol; // <20><><EFBFBD>ߵ<EFBFBD><DFB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//<2F><><EFBFBD><EFBFBD>ʹ<EFBFBD><CAB9>
CPoint2D m_ptSide; // <20><>ֵ<EFBFBD><D6B5>
CCurveEx m_curve; // <20><><EFBFBD>ߵ<EFBFBD><DFB5><EFBFBD><EFBFBD><EFBFBD>,<2C><>б<EFBFBD><D0B1>ʹ<EFBFBD><CAB9>
CXy* m_pMarkFill; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ָ<EFBFBD><D6B8>
CXy* m_pMarkChart; // <20><><EFBFBD><EFBFBD>ɢ<EFBFBD><C9A2><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ָ<EFBFBD><D6B8>
CColorBase m_gradientClrBar; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɫ<EFBFBD><C9AB>
std::vector<float> m_ReverseRangeVec; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5><EFBFBD><EFBFBD>,<2C><>ֵ<EFBFBD>ĵ<EFBFBD>һ<EFBFBD><D2BB><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5><EFBFBD><EFBFBD><EFBFBD>߱<EFBFBD><DFB1><EFBFBD><EFBFBD><EFBFBD>m_right,<2C><><EFBFBD><EFBFBD>ÿ<EFBFBD><C3BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵһ<D6B5><D2BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
std::vector<GDFLOGPENEXT> m_ReversePenVec;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ı<EFBFBD>
std::vector<CCurveEx*> m_CurvesVec; // // <20><><EFBFBD>ߵ<EFBFBD><DFB5><EFBFBD><EFBFBD><EFBFBD><><D6B1>ʹ<EFBFBD><CAB9>.<2E><><EFBFBD>Դ<EFBFBD><D4B4>Ŷ<EFBFBD><C5B6>ξ<EFBFBD><CEBE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
std::vector<CCurveEx*> m_CurvesSelectVec; // // <20><><EFBFBD>ߵ<EFBFBD><DFB5><EFBFBD><EFBFBD><EFBFBD> ,ѡ<><D1A1>ʹ<EFBFBD><CAB9>
BOOL m_bVacuate; //<2F>Ƿ<EFBFBD><C7B7><EFBFBD>ϡ
BOOL m_bCurveRangeAutoSet; // <20><><EFBFBD>ӿؼ<D3BF><D8BC>ж<EFBFBD>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ,<2C>Ƿ<EFBFBD>Ҫ<EFBFBD>Զ<EFBFBD><D4B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>߷<EFBFBD>Χ.
BOOL m_bCurveAvgGrid;//<2F>Ƿ<EFBFBD>һֱ<D2BB><D6B1><EFBFBD>ƾ<EFBFBD><C6BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(<28><><EFBFBD><EFBFBD><EFBFBD>Ƿ<EFBFBD><C7B7>Ƕ<EFBFBD><C7B6><EFBFBD>)
std::vector<CCurveEx*>m_fillCurveVecs; //ʹ<><CAB9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD>ɵıպ϶<D5BA><CFB6><EFBFBD><EFBFBD><EFBFBD>Ƭ<EFBFBD>μ<EFBFBD><CEBC><EFBFBD>
1 month ago
std::vector<CCurveEx*>m_fillGradientCurvesVecs;//ʹ<>ý<EFBFBD><C3BD><EFBFBD>ɫ<EFBFBD><C9AB><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD>ɵĶ<C9B5><C4B6><EFBFBD><EFBFBD><EFBFBD>Ƭ<EFBFBD>μ<EFBFBD><CEBC>ϡ<EFBFBD>
std::vector<COLORREF> m_fillGradientColors; //<2F><>Ӧ<EFBFBD><D3A6><EFBFBD><EFBFBD>ɫ<EFBFBD><C9AB><EFBFBD><EFBFBD><EFBFBD>ε<EFBFBD><CEB5><EFBFBD>ɫ<EFBFBD><C9AB><EFBFBD>ϡ<EFBFBD> <20><>m_fillGradientCurvesVecsһͬ<D2BB><CDAC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
1 month ago
protected:
ECurveShowMode m_eCurveShowMode; // <20><>ʾ<EFBFBD><CABE>ʽ
DWORD m_nTrackCurveFlags; // <20><><EFBFBD>߿<EFBFBD><DFBF><EFBFBD>״̬
DWORD m_nTrackCurveFlagsFill; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>״̬
DWORD m_nTrackCurveFlagsOld; // <20>ɰ汾ת<E6B1BE><D7AA><EFBFBD>°汾
DWORD m_nTrackCurveFlagsShow; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ<EFBFBD><CABE>ʽ<EFBFBD><CABD><EFBFBD><EFBFBD>
DWORD m_nTrackCurveFlagsBrush; // <20><><EFBFBD>ˢ<EEBBAD><CBA2><EFBFBD><EFBFBD>
// <20><><EFBFBD><EFBFBD>Flags
enum TrackCurveFlags
{
TrackCurveFlagBodyBounds = 0x0001, // <20><>ʾ<EFBFBD>߿<EFBFBD>
TrackCurveFlagTitle = 0x0002, // <20><>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD>
TrackCurveFlagTrans = 0x0004, // ͸<><CDB8>
TrackCurveFlagLog = 0x0008, // <20><><EFBFBD><EFBFBD>
TrackCurveFlagGridX = 0x0010, // <20><>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
TrackCurveFlagGridY = 0x0020, // <20><>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
TrackCurveFlagCover = 0x0040, // <20><><EFBFBD>ǵ<EFBFBD>
TrackCurveFlagAlone = 0x0080, // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
TrackCurveFlagHeadFill = 0x0100, // <20><>ʾͷ<CABE><CDB7><EFBFBD><EFBFBD>
TrackCurveFlagHeadLine = 0x0200, // <20><>ʾ<EFBFBD><CABE>ͷ<EFBFBD><CDB7><EFBFBD>ߺ<EFBFBD><DFBA><EFBFBD>
TrackCurveFlagHeadGrid = 0x0400, // <20><>ʾͷ<CABE><CDB7>ע
TrackCurveFlagLogMode = 0x0800, // <20><><EFBFBD><EFBFBD>ģʽ
TrackCurveFlagReadOnly = 0x1000, // ֻ<><D6BB>
TrackCurveFlagCombine = 0x2000, // <20><><EFBFBD><EFBFBD>
TrackCurveFlagHide = 0x4000, // <20><><EFBFBD><EFBFBD>
TrackCurveFlagSmooth = 0x10000, // ƽ<><C6BD>
//old<6C><EFBFBD><E6B1BE><EFBFBD><EFBFBD>ʹ<EFBFBD><CAB9>
TrackCurveStyleStepOld = 0x8000, // <20><><EFBFBD>ݷ<EFBFBD><DDB7><EFBFBD>
TrackCurveStyleRodOld = 0x10000, // <20><>״<EFBFBD><D7B4><EFBFBD><EFBFBD>
TrackCurveStyleDotOld = 0x20000, // ɢ<><C9A2><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
TrackCurveStyleAndCurveOld = 0x40000, // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
TrackCurveStyleDotCurveOld = TrackCurveStyleDotOld | TrackCurveStyleAndCurveOld, // ɢ<><C9A2><EFBFBD><EFBFBD><EFBFBD>߷<EFBFBD><DFB7><EFBFBD>
TrackCurveStyleRodCurveOld = TrackCurveStyleRodOld | TrackCurveStyleAndCurveOld, // <20><>״<EFBFBD><D7B4><EFBFBD>߷<EFBFBD><DFB7><EFBFBD>
TrackCurveStyleFillLeftOld = 0x80000, // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
TrackCurveStyleFillRightOld = 0x100000, // <20>ҳ<EFBFBD><D2B3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
TrackCurveStyleFillCurveOld = TrackCurveStyleFillLeftOld | TrackCurveStyleFillRightOld, // <20>߼<EFBFBD><DFBC><EFBFBD><EFBFBD><EFBFBD>
};
//<2F><><EFBFBD>߳<EFBFBD><DFB3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
enum TrackCurveFlagsFill
{
TrackCurveStyleFillLeftV = 0x0001, // <20><><EFBFBD><EFBFBD>ֵ
TrackCurveStyleFillRightV = 0x0002, // <20><><EFBFBD><EFBFBD>ֵ
TrackCurveStyleFillLeft = 0x0008, // <20><><EFBFBD>߽<EFBFBD>
TrackCurveStyleFillRight = 0x0010, // <20>ұ߽<D2B1>
TraclCurveFlagsFillAll = TrackCurveStyleFillLeftV | TrackCurveStyleFillRightV | TrackCurveStyleFillLeft | TrackCurveStyleFillRight,
TrackCurveStyleShowSideCurve = 0x0100, // <20><>ʾ<EFBFBD>߽<EFBFBD><DFBD><EFBFBD><EFBFBD><EFBFBD>
};
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
enum TrackCurveFlagsShow
{
TrackCurveStyleCurve = 0x0001, //<2F><><EFBFBD>߷<EFBFBD><DFB7><EFBFBD>
TrackCurveStyleStep = 0x0002, //<2F><><EFBFBD>ݷ<EFBFBD><DDB7><EFBFBD>
TrackCurveStyleRod = 0x0004, //<2F><>״<EFBFBD><D7B4><EFBFBD><EFBFBD>
TrackCurveStyleDot = 0x0008, //ɢ<><C9A2><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
TrackCurveFlagsGridVisible = 0x0010, //GridStyle Visible
TrackCurveFlagsStickVisible = 0x0020, //StickStyle Visible
};
//<2F><>ˢ<EFBFBD><CBA2><EFBFBD>ͣ<EFBFBD><CDA3><EFBFBD>ɫ<EFBFBD><C9AB>ͼ<EFBFBD><CDBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɫ<EFBFBD><C9AB>
enum TrackCurveFlagsBrush
{
TrackCurveFlagsBrushColor = 0x0001, //<2F><>ɫ<EFBFBD><C9AB><EFBFBD><EFBFBD>
TrackCurveFlagsBrushPattern = 0x0002, //ͼ<><CDBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
TrackCurveFlagsBrushVector = 0x0004, //ʸ<><CAB8><EFBFBD><EFBFBD>ˢ
TrackCurveFlagsBrushGradient = 0x0008, //<2F><><EFBFBD>仭ˢ
TraclCurveFlagsBrushAll = TrackCurveFlagsBrushColor | TrackCurveFlagsBrushPattern | TrackCurveFlagsBrushVector | TrackCurveFlagsBrushGradient,
TrackCurveFlagsGradientCurveLog = 0x0010, //<2F><><EFBFBD><EFBFBD>ɫ<EFBFBD><C9AB><EFBFBD>߶<EFBFBD><DFB6><EFBFBD><EFBFBD>̶<EFBFBD>
TrackCurveFlagsGradientMidClrAuto = 0x0020, //<2F><><EFBFBD><EFBFBD>ɫ<EFBFBD><C9AB><EFBFBD>Զ<EFBFBD><D4B6>м<EFBFBD>ɫ
};
public:
ECurveShowMode GetCurveShowMode() { return m_eCurveShowMode; }
void SetCurveShowMode(ECurveShowMode showMode) { m_eCurveShowMode = showMode; }
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>߶<EFBFBD><DFB6><EFBFBD>
virtual void CalculateSize(CPoint2D point);
//<2F><><EFBFBD><EFBFBD><EFBFBD>ҿ̶<D2BF>
void DrawTitleLeftAndRightContent(CXyDC* pDC, CString left, CString right, GDFLOGFONT logfont,CRect8 rect, GDFLOGBRUSH brush);
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͷ
virtual void DrawCurveHeadLine(CXyDC* pDC);
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͷ
virtual void DrawActiveCurveHead(CXyDC* pDC);
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
virtual void DrawCurve(CXyDC* pDC);
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
virtual void DrawCurveLine(CXyDC* pDC,CCurveEx& curve,GDFLOGPENEXT logpen);
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
virtual void DrawCurveLineSeg(CXyDC* pDC,CCurveEx& curve,int nStart,int nPoint,GDFLOGPENEXT logpen,int Reverse = 0,float xoffet = 0);
//<2F><><EFBFBD><EFBFBD>ͷβ<CDB7><CEB2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
virtual void DrawCurveLineSeg(int &recursionNum,CXyDC* pDC,CCurveEx& curve,int nStart,int nPoint,GDFLOGPENEXT logpen,BOOL bH,CPoint2D hPt,BOOL bT,CPoint2D tPt,int Reverse = 0,float xoffet = 0,BOOL bMoreReverse = FALSE);
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>е<EFBFBD>ɢ<EFBFBD><C9A2>
virtual void DrawDot(CXyDC* pDC,CCurveEx& curve);
//<2F><>ɢ<EFBFBD><C9A2><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
virtual void DrawDotCurve(CXyDC* pDC,CCurveEx& curve,GDFLOGPENEXT logpen);
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
virtual void DrawStep(CXyDC* pDC,CCurveEx& curve,GDFLOGPENEXT logpen);
//<2F><><EFBFBD><EFBFBD>״<EFBFBD><D7B4><EFBFBD><EFBFBD>
virtual void DrawRod(CXyDC* pDC,CCurveEx& curve,CRect8 rect,GDFLOGPENEXT logpen);
//<2F><><EFBFBD><EFBFBD>״<EFBFBD><D7B4><EFBFBD><EFBFBD>ͼ
virtual void DrawRodCurve(CXyDC* pDC,CCurveEx& curve,CRect8 rect,GDFLOGPENEXT logpen);
// <20><><EFBFBD>ߵ<EFBFBD><DFB5><EFBFBD><EFBFBD><EFBFBD>
virtual void DrawFillCurve(CXyDC* pDC);
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD>ڸ<EFBFBD><DAB8><EFBFBD>ʵ<EFBFBD><CAB5>
virtual void DrawFill(CXyDC* pDC);
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
virtual void DrawGrid(CXyDC* pDC);
virtual void Draw(CXyDC* pDC);
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>õ<EFBFBD><C3B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E3B0B4>Ҫ<EFBFBD><D2AA><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><D2BB>
virtual double GetFillX(int x,CRect8 rect,int leftRightid,BOOL bCut);
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>η<EFBFBD>Χ
virtual void ReSetPosition(CRect8 rect);
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϵ<EFBFBD><CFB5><EFBFBD><EFBFBD>е<EFBFBD><D0B5><EFBFBD><EFBFBD><EFBFBD>
virtual void ComputePoints();
1 month ago
virtual void ComputePoints(CRect8 positon) {};
1 month ago
//<2F><><EFBFBD><EFBFBD>б<EFBFBD><D0B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϵ<EFBFBD><CFB5><EFBFBD><EFBFBD>е<EFBFBD><D0B5><EFBFBD><EFBFBD><EFBFBD>
virtual void ComputePointsInclined();
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ߵ<EFBFBD><DFB5><EFBFBD>ֵ<EFBFBD><EFBFBD><E4BBBB><EFBFBD><EFBFBD>ǰ<EFBFBD><C7B0><EFBFBD>ߵ<EFBFBD><DFB5><EFBFBD>
double TranformCurvePoint(double x /*<2A><EFBFBD>ĵ<EFBFBD>x*/,CRect8 rect/*<2A><EFBFBD><E4BBBB><EFBFBD>ߵķ<DFB5>Χ*/);
//GetNormalShow <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5>:blog=<3D>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD>,value=<3D><><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5>rect=<3D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>򣬷<EFBFBD><F2A3ACB7><EFBFBD>ֵ=<3D><><EFBFBD><EFBFBD><EFBFBD>õ<EFBFBD><C3B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>x
virtual double GetNormalShow(BOOL blog,double value,CRect8 &rect); //<2F>õ<EFBFBD><C3B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD>
//GetCutShow <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5>:blog=<3D>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD>,value=<3D><><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5>rect=<3D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>&bbreak=<3D>Ƿ<EFBFBD><C7B7>ض<EFBFBD>,<2C><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,<2C><><EFBFBD><EFBFBD>ֵ=<3D><><EFBFBD><EFBFBD><EFBFBD>õ<EFBFBD><C3B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>x
virtual double GetCutShow(BOOL blog,double value,CRect8 &rect); //<2F>õ<EFBFBD><C3B5>ض<EFBFBD><D8B6><EFBFBD>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD>
//GetNormalShow <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5>:blog=<3D>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD>,value=<3D><><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5>rect=<3D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>&Brev=<3D>Ƿ񷴾<C7B7>,<2C><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,<2C><><EFBFBD><EFBFBD>ֵ=<3D><><EFBFBD><EFBFBD><EFBFBD>õ<EFBFBD><C3B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>x
virtual double GetReverseShow(BOOL blog,double value,CRect8 &rect,BOOL &brev,int &mRevNum); //<2F>õ<EFBFBD><C3B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD>
//GetNormalShow <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5>:blog=<3D>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD>,value=<3D><><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5>rect=<3D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>򣬷<EFBFBD><F2A3ACB7><EFBFBD>ֵ=<3D><><EFBFBD><EFBFBD><EFBFBD>õ<EFBFBD><C3B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>x
virtual double GetNormalShow(BOOL blog,double value,CRect8 &rect,double left,double right); //<2F>õ<EFBFBD><C3B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD>
virtual int GetHandleCount();
virtual void MoveTo(CRect8& position);
virtual void MoveToActiveCurveHead(CRect8& position);
virtual void Serialize(CArchive& ar, const short &ver);
virtual BOOL Intersects(const CRect8& rect, double dHandleSize);
virtual CWellBaseObj* ObjectAt(const CRect8& rect, double dHandleSize, BOOL bNesting=FALSE);
virtual BOOL IsInRange(CRect8& range);
//<2F>ϸ<EFBFBD>ʽת<CABD><D7AA>
virtual void TransformOldToNew(DWORD flags);
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ŵõ<C5B5><C3B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͱ<EFBFBD><CDB1><EFBFBD>ɫ(ת<><D7AA><EFBFBD>ϰ汾)
virtual BOOL GetFillMark(int nID, CString& str, COLORREF& clr);
virtual void SetPenGrid(GDFLOGPENEXT& penmajor, GDFLOGPENEXT& penminor);
virtual void SetFontHeadMark(GDFLOGFONTEXT& font, BOOL bReplaceClr);
virtual void SetSpace(double major, double minor);
//<2F><><EFBFBD><EFBFBD>ת<EFBFBD><D7AA>
virtual void TransferData(CWellBaseObj* pObj);
virtual CWellDataObj* GetDataObj() { return NULL; }
virtual void SetDataObj(CWellDataObj* pData, BOOL bCopy=TRUE) {}
virtual void GetDataValue(double& dmin, double& dmax) {}
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ
virtual BOOL GetCurveValue(double dDepth, double& dValue, int& nBegin);
virtual double GetCurveValue(int index);
virtual double GetCurveDepth(int index);
virtual int GetDataCount();
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɫ<EFBFBD><C9AB>
virtual void MakeGradientColorBar();
virtual BOOL RemoveChild();
//<2F><><EFBFBD>ر<EFBFBD><D8B1><EFBFBD>ֵ
virtual void SetTrackInCurveFlags(DWORD flags);
virtual void SetTrackInFillFlags(DWORD flags);
virtual void SetTrackInOldFlags(DWORD flags);
virtual void SetFillBrush(DWORD flags);
virtual DWORD GetTrackInCurveFlags();
virtual DWORD GetTrackInFillFlags();
virtual DWORD GetTrackInOldFlags();
virtual DWORD GetFillBrush();
virtual void SetShowTitle(BOOL bFlag);
virtual void SetShowHeadFill(BOOL bFlag);
virtual void SetShowHeadLine(BOOL bFlag);
virtual void SetTransparent(BOOL bFlag);
virtual void SetLog(BOOL bFlag);
virtual void SetShowGridX(BOOL bFlag);
virtual void SetShowGridY(BOOL bFlag);
virtual void SetSmooth(BOOL bFlag);
virtual void SetShowGridHead(BOOL bFlag);
virtual void SetShowCurve(BOOL bFlag);
virtual void SetShowStep(BOOL bFlag);
virtual void SetShowRod(BOOL bFlag);
virtual void SetShowDot(BOOL bFlag);
virtual void SetShowGrid(BOOL bFlag);
virtual void SetShowStick(BOOL bFlag);
virtual void SetShowFillSideCurve(BOOL bFlag);
virtual void SetFillStyleLeft(BOOL bFlag);
virtual void SetFillStyleRight(BOOL bFlag);
virtual void SetFillStyleLeftV(BOOL bFlag);
virtual void SetFillStyleRightV(BOOL bFlag);
virtual void SetFillBrushColor(BOOL bFlag);
virtual void SetFillBrushPattern(BOOL bFlag);
virtual void SetFillBrushVector(BOOL bFlag);
virtual void SetFillBrushGradient(BOOL bFlag);
1 month ago
virtual void SetGradientCurveLog(BOOL bFlag); // <20><>ɫ<EFBFBD>治֧<E6B2BB><D6A7>log
1 month ago
virtual void SetGradientMidClrAuto(BOOL bFlag);
virtual BOOL IsShowTitle();
virtual BOOL IsShowHeadFill();
virtual BOOL IsShowHeadLine();
virtual BOOL IsTransparent();
virtual BOOL IsLog();
virtual BOOL IsShowGridX();
virtual BOOL IsShowGridY();
virtual BOOL IsSmooth();
virtual BOOL IsShowGridHead();
virtual BOOL IsShowCurve();
virtual BOOL IsShowStep();
virtual BOOL IsShowRod();
virtual BOOL IsShowDot();
virtual BOOL IsShowGrid();
virtual BOOL IsShowStick();
virtual BOOL IsShowFillSideCurve();
virtual BOOL IsFillStyleLeft();
virtual BOOL IsFillStyleRight();
virtual BOOL IsFillStyleLeftV();
virtual BOOL IsFillStyleRightV();
virtual BOOL IsFillBrushColor();
virtual BOOL IsFillBrushPattern();
virtual BOOL IsFillBrushVector();
virtual BOOL IsFillBrushGradient();
1 month ago
virtual BOOL IsGradientCurveLog(); // <20><>ɫ<EFBFBD>治֧<E6B2BB><D6A7>log
1 month ago
virtual BOOL IsGradientMidClrAuto();
void SetFillSymbol(CString name);
void ClearCurvesVec();
void ClearCurvesSelectVec();
void ClearFillCurvesVec();
virtual void afterCalculateSize();
1 month ago
void CreateFillCurves();
1 month ago
protected:
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͷ
virtual void DrawTrackHead(CXyDC* pDC, CRect8 headrect);
1 month ago
//<2F><><EFBFBD><EFBFBD>б<EFBFBD><D0B1><EFBFBD><EFBFBD><EFBFBD>߳<EFBFBD><DFB3><EFBFBD>
1 month ago
void DrawFillCurve_Inclined(CXyDC* pDC);
//<2F><><EFBFBD>ɾ<EFBFBD><C9BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>򣬼<EFBFBD>б<EFBFBD><D0B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EBBEAE><EFBFBD>γɵıպ<C4B1><D5BA><EFBFBD><EFBFBD>򣬴<EFBFBD><F2A3ACB4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>polygon<6F><6E>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD>Ϊm_curve,bLeftΪtrue<75><65>ʾ<EFBFBD><CABE><EFBFBD>պ϶<D5BA><CFB6><EFBFBD><EFBFBD>Σ<EFBFBD>false<73><65>ʾ<EFBFBD>õ<EFBFBD><C3B5>ұպ϶<D5BA><CFB6><EFBFBD><EFBFBD><EFBFBD>
void GetCurveSolidRegion(CCurve& polygon, bool bLeft);
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EBBEAE><EFBFBD><EFBFBD><EFBFBD>ɵĶ<C9B5><C4B6><EFBFBD><EFBFBD>Σ<EFBFBD><CEA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,<2C><><EFBFBD>ɹ<EFBFBD><C9B9><EFBFBD><EFBFBD><EFBFBD>false<73><65>bool bLeft == true<75><65>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5><EFBFBD><EFBFBD><EFBFBD>Σ<EFBFBD>falseΪ<65><CEAA><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
bool GetLimenRegion(CCurve& limenRgn, double limenValue,bool bLeft);
void DrawOneCurve(CXyDC* pDC,CCurveEx *pCurve,GDFLOGPENEXT &logpen,CRect8& rect,int ii);
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͼ
virtual void DrawReverseCurve(CXyDC* pDC,CCurveEx& curve,GDFLOGPENEXT& logpen,int &recursionNum); //recursionNums<6D>ǵݹ<C7B5><DDB9><EFBFBD><EFBFBD><EFBFBD>,<2C><><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD><D0B6>εݹ鷴<DDB9><E9B7B4>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><E3B7B4><EFBFBD>Ĵ<EFBFBD><C4B4><EFBFBD>
virtual void DrawInclineReverseCurve(CXyDC* pDC,CCurveEx& curve);
//pOrgPts <20><><EFBFBD><EFBFBD><EFBFBD>߶<EFBFBD><DFB6><EFBFBD><EFBFBD>ӵ<EFBFBD>ͷβ<CDB7><CEB2><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӧ<EFBFBD>ĵ<EFBFBD><C4B5><EFBFBD><EFBFBD>ߵ㣻0<E3A3BB><30>ͷ<EFBFBD>㣬1<E3A3AC><31>β<EFBFBD><CEB2>
void DrawInclineCurveLineSeg(CXyDC* pDC,CCurveEx& curve,int nStart,int nPoint,GDFLOGPENEXT logpen,BOOL bH,CPoint2D hPt,BOOL bT,CPoint2D tPt/*,CPoint2D *pOrgPts*/,int Reverse = 0,float xoffet = 0);
//void CreateFillCurves(CCurveEx &subCurve, CCurveEx* pFillCurve , CTrackCurveBase* pFillSideCurve1 ,CRect8& trackrect);
1 month ago
void CreateFillGradientCurves();
void DrawInclinedTrackGrid(CXyDC* pDC);
1 month ago
public:
// PCG<43>Ķ<EFBFBD>д
//<2F><>ȡPCGһ<47><D2BB><EFBFBD><EFBFBD><EFBFBD>ݵ<EFBFBD><DDB5><EFBFBD><EFBFBD><EFBFBD>Ϣ
//virtual int ReadPCG_Title(CFile &fr,const short& ver);
virtual int ReadPCG_SymbolStyle(CXmlParse& xp,const short& ver);
virtual int ReadPCG_GridStyle(CXmlParse& xp,const short& ver);
virtual int ReadPCG_CurveStyle(CXmlParse& xp,const short& ver);
virtual int ReadPCG_StickStyle(CXmlParse& xp,const short& ver);
virtual int ReadPCG_Self(CFile &fr,CXmlParse& xp,const short& ver );
virtual int ReadPCG_Trace(CXmlParse& xp,CFile &fr,const short& ver, PCG_TRACECOL& traceCol,int fVerstion);
int ReadDml_ReverseData(CFile &fr, CXmlParse& xp, const short& ver);
//<2F><>ȡ<EFBFBD><EFBFBD><E0BEAE><EFBFBD>ߵ<EFBFBD><DFB5><EFBFBD><EFBFBD><EFBFBD>
virtual int ReadPCG_TraceSection(CFile &fr,CXmlParse& xp,const short& ver);
virtual int ReadPCG_SelfSection(CFile &fr,CXmlParse& xp,const short& ver);
virtual int ReadPCG_SelfTraceSection(CFile &fr,CXmlParse& xp,const short& ver);
//дpcg<63><67>ʽ<EFBFBD><CABD>ģ<EFBFBD><C4A3>
virtual void WritePCG_WellColTrace(CFile &fw,int nBaseTabNum);
//дpcg<63><67>ʽ<EFBFBD>ĵ<EFBFBD>
virtual void WritePCG_Trace(CFile &fw,int nBaseTabNum);
//дpcg<63><67>ʽ<EFBFBD>ĵ<EFBFBD>
virtual void WritePCG_TraceSection(CFile &fw,int nBaseTabNum);
public:
1 month ago
// <20><><EFBFBD>߿<EFBFBD>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӧ<EFBFBD><D3A6><EFBFBD><EFBFBD><EFBFBD>ұ߽<D2B1>׮<EFBFBD><D7AE>
1 month ago
double m_dLeftCurveStartL; //<2F><><EFBFBD>߿<EFBFBD>ʼʱ<CABC><CAB1>Ӧ<EFBFBD><D3A6><EFBFBD><EFBFBD><EFBFBD>߽<EFBFBD>׮<EFBFBD><D7AE>
double m_dLeftCurveEndL; //<2F><><EFBFBD>߽<EFBFBD><DFBD><EFBFBD>ʱ<EFBFBD><CAB1>Ӧ<EFBFBD><D3A6><EFBFBD><EFBFBD><EFBFBD>߽<EFBFBD>׮<EFBFBD><D7AE>
double m_dRightCurveStartL; //<2F><><EFBFBD>߿<EFBFBD>ʼʱ<CABC><CAB1>Ӧ<EFBFBD><D3A6><EFBFBD>ұ߽<D2B1>׮<EFBFBD><D7AE>
double m_dRightCurveEndL; //<2F><><EFBFBD>߽<EFBFBD><DFBD><EFBFBD>ʱ<EFBFBD><CAB1>Ӧ<EFBFBD><D3A6><EFBFBD>ұ߽<D2B1>׮<EFBFBD><D7AE>
public:
virtual int ReadPCG_SymbolStyle(CKXmlParse& xp, const short& ver);
virtual int ReadPCG_GridStyle(CKXmlParse& xp, const short& ver);
virtual int ReadPCG_CurveStyle(CKXmlParse& xp, const short& ver);
virtual int ReadPCG_StickStyle(CKXmlParse& xp, const short& ver);
virtual int ReadPCG_Self( CKXmlParse& xp, const short& ver);
virtual int ReadPCG_Trace(CKXmlParse& xp, const short& ver, PCG_TRACECOL& traceCol, int fVerstion);
int ReadDml_ReverseData( CKXmlParse& xp, const short& ver);
//<2F><>ȡ<EFBFBD><EFBFBD><E0BEAE><EFBFBD>ߵ<EFBFBD><DFB5><EFBFBD><EFBFBD><EFBFBD>
virtual int ReadPCG_TraceSection( CKXmlParse& xp, const short& ver);
virtual int ReadPCG_SelfSection(CKXmlParse& xp, const short& ver);
virtual int ReadPCG_SelfTraceSection( CKXmlParse& xp, const short& ver);
1 month ago
public:
void CheckLogLeftRightValue();
1 month ago
};
#endif