#pragma once #include "ItemRectTracker.h" #include "itemGrid.h" #include ".\itemproportion.h" #include "ItemCopyAsImageEx.h" namespace NItem { class CItemCopyAsImagePolygon : public CItemCopyAsImageEx { public: CItemCopyAsImagePolygon(CSigmaDoc* ppDoc); ~CItemCopyAsImagePolygon(); void SetPolygon(CCurveEx* pCurve); int SetRange(CRect rec) override; void TrackHandle(int nHandle, CPoint point, CDC * pDCScreen) override; protected: void CopyToClipboard(CRect8 & rect, double scaleFactor) override; void DrawShadow(CDC* pDC, CRect& rectScreen, CRect rectCenter); private: CRect GetBounds(CCurveEx* pCurve); void CreatePolygon(Gdiplus::GraphicsPath& polygon, CCurveEx* pCurve); CCurveEx* m_pCurve = nullptr; }; }