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.
48 lines
1016 B
C++
48 lines
1016 B
C++
///////////////////////////////////////////////////////////////////////////////////
|
|
//FillBoundary.h
|
|
|
|
#pragma once
|
|
|
|
|
|
#include "BezierPointSegment.h"
|
|
|
|
class CGDFLayer;
|
|
class CGDFObject;
|
|
class CGDFObjectFill;
|
|
class CGDFObjectLine;
|
|
|
|
class CFillBoundary : public CObject
|
|
{
|
|
public:
|
|
DECLARE_SERIAL(CFillBoundary)
|
|
CFillBoundary(CGDFLayer* pLayer=NULL);
|
|
~CFillBoundary();
|
|
//Attributes
|
|
private:
|
|
CGDFObjectFill* m_pFill;
|
|
|
|
CTypedPtrArray<CPtrArray,CGDFObjectLine*> m_objectarray;
|
|
|
|
CBezierStyleDrawPointSegmentArray m_drawsegmentarray;
|
|
CBezierStyleMapPointSegmentArray m_mapsegmentarray;
|
|
|
|
CRect m_drawrect;
|
|
CRect8 m_maprect;
|
|
|
|
double m_dZoomFactor;
|
|
|
|
CGDFObjectLine* m_pSelectedObject;
|
|
//Operations
|
|
public:
|
|
void AddObject(CGDFObjectLine* pObject);
|
|
void Clear();
|
|
void SetFill(CGDFObjectFill* pFill);
|
|
double GetArea();
|
|
CBezierStyleDrawPointSegmentArray* GetDrawSegmentArray();
|
|
CBezierStyleMapPointSegmentArray* GetMapSegmentArray();
|
|
CRect8 GetMapRect();
|
|
int GetObjectCount();
|
|
|
|
friend class CGDFObjectFill;
|
|
};
|