#pragma once #include "FaciesObject.h" class CGDFObjectLine : public CGDFObject { public: DECLARE_SERIAL(CGDFObjectLine) CGDFObjectLine(CGDFLayer* pLayer=NULL); virtual ~CGDFObjectLine(); //Attributes GDFLOGPEN m_logpen; double m_dHitTestResult; //保存边界点序列 CArray m_borderdrawpointarray; CArray m_bordermappointarray; //Operations virtual void BuildBorderPointArray(); virtual BOOL GetClose(); virtual void Clear(); virtual void DuplicateAttribute(CGDFObject* pObject); void GetBorderCutPoint(double dIndex,CPoint2D& point); void GetBorderCutPoint(double index,CPoint2D* point); void GetBorderCutPoint(double dHeadIndex,CPoint2D* headcutpoint,double dEndIndex,CPoint2D* endcutpoint); virtual int GetBorderDrawPointCount(); virtual POINT* GetBorderDrawPointArray(); virtual int GetBorderMapPointCount(); virtual CPoint2D* GetBorderMapPointArray(); virtual BOOL OnChanged(CGDFSegment* pSegment=NULL);//一般的Segment改变的消息,如index0改变等 void SetLogPen(GDFLOGPEN* pLogpen); void GetLogPen(GDFLOGPEN* pLogpen); virtual void SetZoomFactor(double dZoomFactor); };