13#include "GUIViewImageBase.h"
14#include "GUIDefinitions.h"
15#include "GUIViewDrawingDefinitions.h"
27 class CGUIViewImageLayer;
29 class CGUIManagerView;
30 class CInternalViewManager;
31 class CGUIManagerViewDrawingObject;
32 class CGUIManagerViewImageSelectionImage;
33 class CGUIManagerContextMenuViewDrawing;
34 class CGUIManagerContextMenuViewImageObject;
35 class CInternalCanvas;
36 class CGUIViewImageMiniMap;
37 class CGUIViewToolBar;
38 class CGUIDialogImageInfo;
39 class CGUIDialogImagePageList;
40 class CGUIDialogLayerProperties;
41 class CGUIDialogLayerProperties;
301 virtual const CResult Save(
const wchar_t* pWcsFileNameWithPath =
nullptr);
955 virtual const CResult InternalSetScale(
double f64Scale);
972 virtual const CResult InternalZoomIn(POINT ptCanvas,
double f64Ratio = 1.25);
974 virtual const CResult InternalZoomOut(POINT ptCanvas,
double f64Ratio = .8);
1715 virtual CD2DObject* GetD2DObject();
1720 virtual void SetTitle(LPCTSTR lpszTitle)
override;
1722 CGUIViewImageMiniMap* GetMiniMap()
const;
1723 virtual void UpdateTheme()
override;
1724 virtual const CResult UpdateStatusBar();
1725 virtual void ChangeImageCanvasSize();
1726 virtual void ActivatedPopupMenu(CGUIPopupMenuShell* pPopupMenu)
override;
1728 virtual void ShowMultiSelectRect(
bool bShow);
1729 virtual bool IsMultiSelectRectVisible()
const;
1731 virtual void ShowMultiSelectCandidateRect(
bool bShow);
1732 virtual bool IsMultiSelectCandidateRectVisible()
const;
1739 void SetCurrentCursor(UINT nCursor);
1740 UINT GetCurrentCursor()
const;
1742 virtual void SetFileNameOnStatusBar(
bool bSet);
1743 virtual bool IsFileNameOnStatusBar()
const;
1747 virtual void SetVisible(
bool bVisible)
override;
1749 virtual void UpdateScrollBar();
1754 virtual void SetDialogLayerPropertiesPtr(CGUIDialogLayerProperties* pDlg);
1762 virtual const CResult LoadFigure(EFileExtension eFileExt,
const wchar_t* pWcsFileNameWithPath =
nullptr,
bool bErrorMsgBox =
false);
1766 virtual const CResult InternalLoadFigureGBR(
const wchar_t* pWcsFileNameWithPath,
const wchar_t* pWcsLayerName, uint32_t u32Color,
Foundation::CFLFigureArray* pFlfa =
nullptr);
1767 virtual const CResult InternalLoadFigureDXF(
const wchar_t* pWcsFileNameWithPath);
1770 DECLARE_MESSAGE_MAP()
1771 afx_msg
void OnLButtonDblClk(UINT nFlags, CPoint ptClient);
1772 afx_msg
void OnLButtonDown(UINT nFlags, CPoint ptClient);
1773 afx_msg
void OnLButtonUp(UINT nFlags, CPoint ptClient);
1774 afx_msg
void OnMButtonDblClk(UINT nFlags, CPoint ptClient);
1775 afx_msg
void OnMButtonDown(UINT nFlags, CPoint ptClient);
1776 afx_msg
void OnMButtonUp(UINT nFlags, CPoint ptClient);
1777 afx_msg
void OnRButtonDblClk(UINT nFlags, CPoint ptClient);
1778 afx_msg
void OnRButtonDown(UINT nFlags, CPoint ptClient);
1779 afx_msg
void OnRButtonUp(UINT nFlags, CPoint ptClient);
1780 afx_msg BOOL OnMouseWheel(UINT nFlags, int16_t zDelta, CPoint pt);
1781 afx_msg
void OnSize(UINT nType, int32_t cx, int32_t cy);
1782 virtual
void PreSubclassWindow();
1783 virtual BOOL PreTranslateMessage(MSG* pMsg);
1784 virtual
void OnDraw(CDC* );
1785 afx_msg
void OnMouseMove(UINT nFlags, CPoint ptClient);
1786 afx_msg
void OnKeyDown(UINT nChar, UINT nRepCnt, UINT nFlags);
1787 afx_msg
void OnKeyUp(UINT nChar, UINT nRepCnt, UINT nFlags);
1788 afx_msg
void OnTimer(UINT_PTR nIDEvent);
1789 afx_msg BOOL OnEraseBkgnd(CDC* pDC);
1790 afx_msg BOOL OnSetCursor(CWnd* pWnd, UINT nHitTest, UINT message);
1791 afx_msg
void OnDropFiles(HDROP hDropInfo);
1792 afx_msg
void OnMouseLeave();
1793 afx_msg
void OnMouseHover(UINT nFlags, CPoint point);
1794 afx_msg
void OnEnterIdle(UINT nWhy, CWnd* pWho);
1797 virtual
void OnInitialUpdate();
1798 afx_msg
void OnFileOpen();
1799 afx_msg
void OnUpdateFileOpen(CCmdUI* pCmdUI);
1800 afx_msg
void OnFileIO(UINT uID);
1801 afx_msg
void OnUpdateFileIO(CCmdUI* pCmdUI);
1802 afx_msg
void OnMoreMenu();
1804 afx_msg
void OnShowImageMiniMap();
1805 afx_msg
void OnUpdateShowImageMiniMap(CCmdUI* pCmdUI);
1807 afx_msg
void OnSetZoomMode(UINT uID);
1808 afx_msg
void OnSetZoomFitMode();
1809 afx_msg
void OnSetPanningMode();
1810 afx_msg
void OnShowScrollBar();
1811 afx_msg
void OnShowStatusBar();
1812 afx_msg
void OnUpdateZoomIn(CCmdUI* pCmdUI);
1813 afx_msg
void OnUpdateZoomOut(CCmdUI* pCmdUI);
1814 afx_msg
void OnUpdateZoomFit(CCmdUI* pCmdUI);
1815 afx_msg
void OnUpdatePanningMode(CCmdUI* pCmdUI);
1816 afx_msg
void OnUpdateShowScrollBarMode(CCmdUI* pCmdUI);
1817 afx_msg
void OnUpdateShowStatusBarMode(CCmdUI* pCmdUI);
1819 afx_msg
void OnMeasurementDistance();
1820 afx_msg
void OnUpdateMeasurement(CCmdUI* pCmdUI);
1821 afx_msg
void OnSetMeasureMode(UINT uID);
1823 afx_msg
void OnFigureMenu();
1824 afx_msg
void OnUpdateFigureMenu(CCmdUI* pCmdUI);
1825 afx_msg
void OnCreateFigure(UINT uID);
1826 afx_msg
void OnUpdateCreateFigure(CCmdUI* pCmdUI);
1827 afx_msg
void OnLoadFigure();
1828 afx_msg
void OnUpdateLoadFigure(CCmdUI* pCmdUI);
1830 afx_msg
void OnLayers();
1831 afx_msg
void OnSetLayers(UINT uID);
1832 afx_msg
void OnUpdateLayers(CCmdUI* pCmdUI);
1834 afx_msg
void OnSyncView();
1835 afx_msg
void OnSetSyncView(UINT uID);
1836 afx_msg
void OnUpdateSyncView(CCmdUI* pCmdUI);
1838 afx_msg
void OnSetSyncWindow(UINT uID);
1840 afx_msg
void OnShowGrid();
1841 afx_msg
void OnUpdateShowGrid(CCmdUI* pCmdUI);
1843 afx_msg
void OnShowCrosshair();
1844 afx_msg
void OnUpdateShowCrosshair(CCmdUI* pCmdUI);
1846 afx_msg
void OnShowImageCoordinateOnCursor();
1847 afx_msg
void OnUpdateShowImageCoordinateOnCursor(CCmdUI* pCmdUI);
1849 afx_msg
void OnSetCanvasColor();
1850 afx_msg
void OnUpdateSetCanvasColor(CCmdUI* pCmdUI);
1852 afx_msg
void OnSetPixelAccuracy();
1853 afx_msg
void OnUpdateSetPixelAccuracy(CCmdUI* pCmdUI);
1855 afx_msg
void OnInformationHelp();
1857 afx_msg
void OnHScroll(UINT nSBCode, UINT nPos, CScrollBar* pScrollBar);
1858 afx_msg
void OnVScroll(UINT nSBCode, UINT nPos, CScrollBar* pScrollBar);
1861 afx_msg
void OnSetFocus(CWnd* pOldWnd);
1862 afx_msg
void OnNcLButtonDown(UINT nHitTest, CPoint point);
1863 afx_msg
void OnNcLButtonUp(UINT nHitTest, CPoint point);
1864 afx_msg LRESULT OnMessageRunOnMainThread(WPARAM wParam, LPARAM lParam);
1865 afx_msg LRESULT OnMessageRunOnMainThreadPost(WPARAM wParam, LPARAM lParam);
1866 afx_msg
void OnClipboardUpdate();
1868 afx_msg
void OnDestroy();
1870 BOOL OnNeedText(UINT
id, NMHDR* pNMHDR, LRESULT* pResult);
1871 virtual
void PostNcDestroy();
1874 virtual const
CResult MoveNamedLayerUp(int32_t i32LayerIndex);
1875 virtual const
CResult MoveNamedLayerDown(int32_t i32LayerIndex);
1877 virtual const
CResult InternalAssign(const CGUIViewBase& rhs) override;
1879 virtual const
CResult InternalConvertLayerToFigure(Foundation::CFLFigureArray& flfaResult);
1881 virtual const
CResult PreDestroy() override;
1883 virtual const
CResult DrawBackground();
1885 virtual const
CResult InitializeDIB();
1886 virtual const
CResult TerminateDIB();
1887 virtual const
CResult CommitDraw(CDC* pDC);
1888 virtual const
CResult SetDefaultView();
1896 LRESULT OnCursorPosChanged(WPARAM wParam, LPARAM lParam);
1897 LRESULT OnScaleChanged(WPARAM wParam, LPARAM lParam);
1898 LRESULT OnLazyBroadcastScaleChanged(WPARAM wParam, LPARAM lParam);
1899 LRESULT OnUpdateStatusBar(WPARAM wParam, LPARAM lParam);
1900 LRESULT OnPaneDialogClosed(WPARAM wParam, LPARAM lParam);
1902 void BroadcastOffsetChanged();
1903 void BroadcastScaleChanged();
1905 virtual
void OnReceiveBroadcast(const Base::CBroadcastMessage* pMessage) override;
1912 virtual const
CResult RestoreButtonInfo();
1913 virtual
void UpdateToolBarButtons() override;
1914 virtual
void UpdateToolBarButtonVisible() override;
1916 const
CResult SetPixelAccuracy(
double f64PixelAccuracyX,
double f64PixelAccuracyY, Foundation::ELengthUnit eLenUnit,
bool bWriteFile);
1918 void SetMinMaxScale();
1919 void SetZoomFitMode(
bool bSet);
1920 bool IsZoomFitMode();
1922 virtual
bool DrawLayerBegin();
1923 virtual
bool DrawLayerEnd();
1924 virtual
bool DrawGrid();
1925 virtual
bool DrawLayerElements();
1926 virtual
bool DrawMiniMap();
1927 virtual
bool DrawCrosshair();
1929 virtual const
CResult CreateDialogOfSetDecimalPlaceOfCoordinate();
1930 virtual const
CResult CreateDialogOfPixelAccuracy();
1931 virtual const
CResult CreateDialogOfSetViewCenterAndScale();
1932 virtual const
CResult CreateDialogOfSetScale();
1933 virtual const
CResult CreateDialogOfLayerProperties();
1934 virtual const
CResult CreateDialogLoadFigureDxf(const std::vector<Base::CFLString<
wchar_t>>& vctDxfPath);
1936 virtual
bool IsLayerPropertiesDialogVisible() const;
1937 virtual
void UpdateAllLayersGeometryFlag(
bool bUpdate);
1938 virtual
void ClearAllLayersOffscreenD2DGeometry();
1939 virtual
void BeginOffsetOnlyChanging();
1940 virtual
void EndOffsetOnlyChanging();
1946 DeclareGetClassType();
1949 CGUIViewImageMiniMap* m_pMiniMap;
1950 CGUIManagerContextMenuViewDrawing* m_pMgrContextMenu;
1951 CGUIManagerViewDrawingObject* m_pMgrViewDrawingObject;
1959 double m_f64MinScale;
1960 double m_f64MaxScale;
1962 uint32_t m_u32ForceZoomFitCount;
1965 bool m_bZoomFitMode;
1966 bool m_bPanningMode;
1967 bool m_bRButtonDragPanningMode;
1970 Foundation::CFLPoint<
double> m_flpOffset;
1971 Foundation::CFLPoint<
double> m_flpOffsetOnBegin;
1972 bool m_bOffsetOnlyChanging;
1976 int32_t m_i32CanvasLeft;
1977 int32_t m_i32CanvasTop;
1978 int32_t m_i32CanvasWidth;
1979 int32_t m_i32CanvasHeight;
1980 COLORREF m_clrClientFillColor;
1984 typedef struct sDibInfo
1986 BITMAPINFOHEADER header;
1987 RGBQUAD acolors[256];
1991 SDibInfo m_bitmapInfo;
1992 HBITMAP m_hDibSection;
1994 uint8_t* m_pDibBase;
1995 uint8_t* m_pOffBuffer;
2000 HGDIOBJ m_hPreviousSelectedGdiObj;
2004 bool m_bShiftKeyDown;
2005 bool m_bNCLButtonDown;
2006 bool m_bContextMenuFromRButtonUp;
2009 bool m_bEnableSystemMenuOnFileDialog;
2010 int16_t m_i16DownKey;
2012 int32_t m_i32LastNCPointX;
2013 int32_t m_i32LastNCPointY;
2015 bool m_bEnableSelection;
2017 bool m_bShowFigureObjectCenterOfGravityGlobal;
2018 bool m_bShowFigureObjectRectCenterGlobal;
2019 bool m_bShowFigureObjectWindingDirectionGlobal;
2020 bool m_bShowFigureObjectWindingSequenceGlobal;
2021 bool m_bShowFigureObjectArrayElementSequenceGlobal;
2022 bool m_bShowFigureObjectArrayElementSequenceRecursivelyGlobal;
2023 bool m_bShowFigureObjectInformationTextGlobal;
2025 bool m_bEnableFigureObjectRotationGlobal;
2026 bool m_bEnableFigureObjectMagnetToImageGlobal;
2027 bool m_bEnableFigureObjectAngleMagnetGlobal;
2028 uint8_t m_u8FigureObjectDecimalPlaceGlobal;
2029 uint8_t m_u8FigureObjectDecimalPlaceForPixelAccuracyGlobal;
2030 bool m_bFigureObjectExponentialNotationGlobal;
2031 bool m_bFigureObjectExponentialNotationForPixelAccuracyGlobal;
2037 bool m_bGrayFillColor;
2038 bool m_bMouseOnView;
2039 bool m_bSetFileNameOnStatusBar;
2051 CPoint m_ptPrevClient;
2052 CPoint m_ptClientRBtnDown;
2053 CPoint m_ptClientLBtnDown;
2054 int32_t m_i32MouseDragDistance;
2055 int32_t m_i32MouseDragDistanceThreshold;
2061 bool m_bShowMultiSelectRect;
2062 bool m_bShowMultiSelectCandidateRect;
2067 double m_f64PixelAccuracyX;
2068 double m_f64PixelAccuracyY;
2071 uint8_t m_u8DecimalPlaceOfCoordinate;
2073 bool m_bToBroadcastScaleChanged;
2075 CD2DObject m_d2dObject;
2078 std::map<EViewDrawingSyncOption, CGUIViewDrawing*> m_mapRootSyncView;
2081 std::vector<CGUIViewImageLayer*> m_vctDrawingLayers;
2082 std::vector<CGUIViewImageLayer*> m_vctDrawingLayersNamed;
2083 std::unordered_map<std::wstring, CGUIViewImageLayer*> m_mapDrawingLayers;
2092 bool m_bCtrlKeyDown;
2099 bool m_bShowCrosshair;
2100 bool m_bShowImageCoordinateOnCursor;
2101 bool m_bFirstShowScrollBar;
2102 bool m_bRotateFigureZOrder;
2109 CGUIPaneDialog* m_pPaneDlgLayerProperties;
2110 CGUIDialogLayerProperties* m_pDlgLayerProperties;
2111 CGUIPaneDialog* m_pPaneDlgFigureGbrAttribute;
2114 friend class CInternalViewImage;
2115 friend class CGUIManagerContextMenuViewDrawing;
2116 friend class CGUIViewImageMiniMap;
2117 friend class CGUIPropertyGridPropertyViewImageList;
2118 friend class CGUIPropertyItemViewImageList;
2119 friend class CGUIPropertyGridPropertyViewFigure;
2120 friend class CGUIPropertyGridPropertyCategory;
2121 friend class CGUIPropertyItemViewFigure;
2122 friend class CGUIChildFrameImage;
2124 friend class CGUIViewImageLayerObject;
2125 friend class CGUIManagerView;
2126 friend class CGUIManager;
2127 friend class CInternalViewManager;
2128 friend class CInternalCanvas;
2129 friend class CGUIManagerViewImageObject;
2130 friend class CGUIManagerDrawingViewImageObject;
2131 friend class CGUIManagerContextMenuViewImageObject;
2132 friend class CGUIViewImageCanvas;
2133 friend class CGUIViewToolBar;
2134 friend class CGUIMainFrame;
2135 friend class CGUIDialogCreateStencil;
2136 friend class CGUIDialogImageInfo;
2137 friend class CGUIDialogImagePageList;
2138 friend class CGUIDialogLayerProperties;
2139 friend class CGUIDialogLayerProperties;
2140 friend class CGUIDialogLoadRawImageSetting;
2141 friend class CGUIDialogLoadRawImageMultiSetting;
2142 friend class CGUIDialogHelp;
2144 friend class CGUIManagerViewDrawingObject;
Template type 의 배열 클래스.
Definition RangeTree.h:19
FLImaging의 이미지 클래스
Definition FLImage.h:35
Template type 의 문자열 클래스
Definition INIUtilities.h:20
FLImaging 모듈의 수행 결과 객체
Definition ResultsDef.h:1514
점을 표현하는 클래스
Definition FLPoint.h:24
직사각형을 표현하는 클래스
Definition FLRect.h:24
고정 뷰 선언에 관한 클래스
Definition GUIFixedViewDeclaration.h:30
도면 뷰 클래스
Definition GUIViewDrawing.h:52
double GetPixelAccuracyX() const
도면 뷰의 Pixel Accuracy X 를 얻어옵니다.
virtual const CResult Save(const wchar_t *pWcsFileNameWithPath=nullptr)
도면을 저장합니다.
virtual FLImaging::Foundation::CFLPoint< double > GetCursorPosOnLButtonDown() const
마우스 왼쪽 버튼이 눌린 시점의 커서 위치를 반환합니다.
virtual const CResult ZoomAtCenter(double f64Scale)
현재 중심 좌표를 유지한 상태에서 이미지 뷰의 배율을 f64Scale로 설정
virtual void ShowCrosshair(bool bShow)
도면 뷰에서 마우스 커서 위치에 십자선을 draw 할 지 여부를 설정합니다.
virtual void ShowImageCoordinateOnCursor(bool bShow)
도면 뷰에서 마우스 커서 위치에 이미지 좌표를 디스플레이 할 지 여부를 설정합니다.
const CResult SetPixelAccuracyY(double f64PixelAccuracyY)
도면 뷰의 Pixel Accuracy Y 를 설정합니다.
virtual const CResult SetLayerAutoClearMode(int32_t i32LayerIndex, ELayerAutoClearMode eMode, bool bSet)
레이어의 자동 클리어 모드를 설정합니다.
const CResult CaptureScreen(Base::CFLImage &fliImage, bool bIncludeFrame=false)
현재 화면을 캡쳐합니다.
const CResult ClearMeasurement()
도면 뷰의 모든 Measurement 객체를 제거합니다.
virtual Foundation::CFLPoint< int32_t > ConvertImageCoordToClientCoord(double f64X, double f64Y) const
이미지 좌표를 클라이언트 좌표로 변환합니다.
virtual void SetCanvasColor(COLORREF clrCanvas)
도면 뷰의 배경색을 설정합니다.
virtual const CResult SetLayerAutoClearMode(ELayerAutoClearMode eMode, bool bSet)
모든 레이어의 자동 클리어 모드를 한꺼번에 설정합니다. 이름으로 구분되는 Layer와 인덱스로 구분되는 Layer 모두에 설정됩니다.
virtual void SetAvailableViewDrawingContextMenu(EAvailableViewDrawingContextMenu eMenu)
도면 뷰에 대해 가능한 컨텍스트 메뉴를 설정합니다.
virtual const CResult ShowToolBar(bool bShow) override
ToolBar 의 show/hide 여부를 설정합니다.
virtual void ClearAllLayers()
Drawing layers 위의 drawing 객체들을 클리어 합니다.
const CResult SetPixelAccuracyX(double f64PixelAccuracyX)
도면 뷰의 Pixel Accuracy X 를 설정합니다.
virtual const CResult SetDecimalPlaceOfCoordinate(uint8_t u8DecimalPlace=2)
마우스 커서 위치에 이미지 좌표 출력 시 소수점 표시 자릿수를 설정합니다. 소수점 둘째 자리까지 표시하려면(예 : 0.01, 2.54 등) 2 를 인자로 전달합니다....
const CResult ShowStatusBar(bool bShow)
StatusBar 의 show/hide 여부를 설정합니다.
const CResult SetPixelAccuracy(double f64PixelAccuracyX, double f64PixelAccuracyY)
도면 뷰의 Pixel Accuracy X, Y 를 설정합니다.
Foundation::ELengthUnit GetPixelAccuracyUnit() const
도면 뷰의 Pixel Accuracy 에 대한 단위를 얻어옵니다.
virtual Foundation::CFLPoint< double > ConvertCanvasCoordToImageCoord(int32_t i32X, int32_t i32Y) const
캔버스 좌표를 이미지 좌표로 변환합니다.
virtual void ShowGrid(bool bShow)
도면 뷰의 그리드 show/hide 여부를 설정합니다.
virtual const CResult SetLayerAutoClearMode(CGUIViewImageLayer *pLayer, ELayerAutoClearMode eMode, bool bSet)
레이어의 자동 클리어 모드를 설정합니다.
CGUIViewDrawing(const CGUIViewDrawing *pRhs)
복사 생성자(포인터)
DECLARE_DYNCREATE(CGUIViewDrawing) virtual ~CGUIViewDrawing()
기본 소멸자
virtual Foundation::CFLPoint< double > ConvertClientCoordToImageCoord(const Foundation::CFLPoint< int32_t > &point) const
클라이언트 좌표를 이미지 좌표로 변환합니다.
virtual Foundation::CFLPoint< int32_t > ConvertCanvasCoordToClientCoord(const Foundation::CFLPoint< int32_t > &flp) const
캔버스 좌표를 클라이언트 좌표로 변환합니다.
virtual bool IsSelectionEnabled() const
도면 뷰에서 마우스 드래그 시 선택 기능 활성화 여부를 얻어옵니다.
virtual const CResult SelectMenuItem(EMenuItemViewDrawing eMenuItemViewDrawing)
선택한 메뉴 아이템에 대한 명령을 수행합니다.
virtual Foundation::CFLRect< int32_t > ConvertImageCoordToCanvasCoord(const Foundation::CFLRect< double > &flr) const
이미지 좌표를 캔버스 좌표로 변환합니다.
const CResult ShowScrollBar(bool bShow)
ScrollBar 의 show/hide 여부를 설정합니다.
CGUIViewImageLayer * GetNamedLayer(int32_t i32Index) const
이름으로 정의된 레이어를 인덱스로 얻어 옵니다. 인덱스는 화면에 먼저 그려지는 레이어 순으로 정의됩니다.
const CResult SetPixelAccuracyUnit(Foundation::ELengthUnit eLenUnit)
도면 뷰의 Pixel Accuracy 에 대한 단위를 설정합니다.
virtual double GetScale() const
도면 뷰의 현재 스케일을 얻어 옵니다.
CGUIViewDrawing(const CGUIViewDrawing &rhs)
복사 생성자(레퍼런스)
const CResult DesynchronizePointOfView(CGUIViewDrawing *pTargetView)
파라미터의 뷰에 대해 시점 동기화를 해제합니다.
virtual const CResult Load(Base::CFLArray< Base::CFLString< wchar_t > > &flaFilePathToLoad, EViewDrawingLoadOption eOption=EViewDrawingLoadOption_Load)
목록에 포함된 도면 파일을 뷰에 불러옵니다.
EGUIViewDrawingHitArea GetHitArea() const
도면 뷰의 현재 마우스 위치에 대한 Hit 영역을 얻어 옵니다.
virtual Foundation::CFLPoint< double > GetViewCenterImageCoord() const
뷰의 중심 위치에 해당하는 이미지 좌표를 반환하는 함수
virtual void SetManagerContextMenu(const CGUIManagerContextMenuViewDrawing *pMgr)
컨텍스트 메뉴 관리자 객체를 설정합니다.
virtual bool GetLayerAutoClearMode(const CGUIViewImageLayer *pLayer, ELayerAutoClearMode eMode) const
지정한 모드에 대한 레이어의 자동 클리어 상태를 얻어 옵니다.
const CResult CaptureScreen(Base::CFLImage *pFliImage, bool bIncludeFrame=false)
현재 화면을 캡쳐합니다.
virtual void EnableSelection(bool bEnable)
도면 뷰에서 마우스 드래그 시 선택 기능 활성화 여부를 설정합니다.
virtual Foundation::CFLRect< int32_t > ConvertCanvasCoordToClientCoord(const Foundation::CFLRect< int32_t > &flr) const
캔버스 좌표를 클라이언트 좌표로 변환합니다.
virtual const CResult Load(const wchar_t *pWcsPath=nullptr, EViewDrawingLoadOption eOption=EViewDrawingLoadOption_Load)
도면을 뷰에 불러옵니다.
virtual Foundation::CFLRect< int32_t > ConvertImageCoordToClientCoord(const Foundation::CFLRect< double > &flr) const
이미지 좌표를 클라이언트 좌표로 변환합니다.
CGUIViewImageLayer * GetLayer(int32_t i32Index) const
매개변수로 전달된 인덱스의 레이어 포인터를 얻어 옵니다.
virtual EGUIViewDrawingTeachingMode GetTeachingMode() const
현재 뷰에 설정된 티칭 모드를 리턴합니다.
virtual const CResult ZoomFit()
이미지가 도면 뷰에 fit 되는 크기가 되도록 도면 뷰의 스케일을 조정합니다.
Foundation::CFLPoint< double > GetOffset() const
도면 뷰의 현재 오프셋을 얻어 옵니다. 패닝 또는 스케일 변경 시 도면 뷰의 오프셋이 변경됩니다.
virtual EZoomMode GetZoomMode() const
현재 마우스 왼쪽 버튼 클릭 액션에 설정된 zoom mode 를 반환합니다.
const CResult GetPixelAccuracy(double &f64PixelAccuracyX, double &f64PixelAccuracyY) const
도면 뷰의 Pixel Accuracy X, Y 를 얻어옵니다.
virtual void SetManagerViewDrawingObject(const CGUIManagerViewDrawingObject *pMgr)
Object 관리자 객체를 설정합니다.
static CGUIViewDrawing * CreateView(int32_t i32L, int32_t i32T, int32_t i32R, int32_t i32B, bool bStandalone=false)
새 도면 뷰를 생성 후 도면 뷰의 포인터를 반환합니다.
static CGUIViewDrawing * CreateView()
새 도면 뷰를 생성 후 도면 뷰의 포인터를 반환합니다.
const CResult SynchronizePointOfView(CGUIViewDrawing *pTargetView)
파라미터의 뷰와 현재 뷰의 시점을 동기화 합니다.
int32_t GetNamedLayerCount() const
이름으로 정의된 레이어의 개수를 리턴합니다.
virtual bool IsPanningMode() const
현재 마우스 드래그 액션이 panning 모드인지 여부를 반환합니다.
virtual Foundation::CFLPoint< int32_t > ConvertClientCoordToCanvasCoord(const Foundation::CFLPoint< int32_t > &flp) const
클라이언트 좌표를 캔버스 좌표로 변환합니다.
CGUIViewImageLayer * GetLayerByName(const std::wstring &strLayerName)
매개변수로 전달된 이름을 가진 레이어 포인터를 얻어 옵니다. 해당 이름을 가진 레이어가 없을 경우 새로 생성합니다.
virtual const CResult SetViewCenterAndScale(const Foundation::CFLPoint< double > &flpImageCoord, double f64Scale)
뷰의 중심을 특정 좌표 flpImageCoord로 설정 후 flpImageCoord를 중심으로 이미지 뷰의 배율을 f64Scale로 설정
virtual EAvailableViewDrawingFigureContextMenu GetAvailableViewDrawingContextMenuFigure() const
도면 뷰의 Figure 에 대해 가능한 컨텍스트 메뉴를 얻어 옵니다.
bool DoesLayerExist(const std::wstring &strLayerName) const
매개변수로 전달된 이름을 가진 레이어 존재 여부를 반환합니다.
virtual const CResult SetViewCenter(const Foundation::CFLPoint< double > &flpImageCoord)
뷰의 중심을 특정 좌표 flpImageCoord로 설정
const CResult ResignRootSyncView(EViewDrawingSyncOption eViewDrawingSyncOption)
특정 옵션에 대해 동기화 되어 있는 뷰들의 root view 가 현재 도면 뷰일 경우, 다른 뷰로 root view 를 교체합니다.
virtual bool IsCrosshairVisible() const
도면 뷰에서 마우스 커서 위치에 십자선을 디스플레이 할 지 여부를 얻어옵니다.
virtual EAvailableViewDrawingContextMenu GetAvailableViewDrawingContextMenu() const
도면 뷰에 대해 가능한 컨텍스트 메뉴를 얻어 옵니다.
virtual CGUIManagerContextMenuViewDrawing * GetManagerContextMenu() const
컨텍스트 메뉴 관리자 객체를 얻어 옵니다.
const CResult DeleteLayerByName(const std::wstring &strLayerName)
매개변수로 전달된 이름을 가진 레이어 객체를 삭제하고 메모리를 해제합니다.
bool IsSynchronized(EViewDrawingSyncOption eViewDrawingSyncOption) const
특정 옵션에 대해 현재 도면 뷰가 다른 도면 뷰와 동기화 되어 있는지 여부를 반환합니다.
virtual Foundation::CFLRect< double > ConvertClientCoordToImageCoord(const Foundation::CFLRect< int32_t > &rect) const
클라이언트 좌표를 이미지 좌표로 변환합니다.
virtual bool IsGridVisible() const
도면 뷰의 그리드 show/hide 여부를 얻어옵니다.
virtual CGUIManagerViewDrawingObject * GetManagerViewDrawingObject() const
Object 관리자 객체를 얻어 옵니다.
virtual const CResult ZoomFitToLayer(int32_t i32LayerIndex)
선택한 레이어 위에 그려진 도형 및 텍스트가 화면에 꽉 차도록 스케일 및 오프셋을 조정합니다.
virtual void SetPanningMode(bool bSet)
현재 마우스 드래그 액션을 panning 모드로 설정하거나 설정 해제합니다.
virtual FLImaging::Foundation::CFLPoint< double > GetCursorPosOnRButtonDown() const
마우스 오른쪽 버튼이 눌린 시점의 커서 위치를 반환합니다.
virtual COLORREF GetCanvasColor() const
도면 뷰의 배경색을 얻어옵니다.
const CResult GetPixelAccuracy(double *pF64PixelAccuracyX, double *pF64PixelAccuracyY) const
도면 뷰의 Pixel Accuracy X, Y 를 얻어옵니다.
const CResult DesynchronizePointOfViewAll()
현재 뷰의 시점 동기화를 해제합니다.
virtual FLImaging::Foundation::CFLPoint< double > GetCursorPosOnMButtonDown() const
마우스 가운데 버튼이 눌린 시점의 커서 위치를 반환합니다.
virtual Foundation::CFLPoint< int32_t > ConvertCanvasCoordToClientCoord(int32_t i32X, int32_t i32Y) const
캔버스 좌표를 클라이언트 좌표로 변환합니다.
virtual Foundation::CFLRect< int32_t > ConvertClientCoordToCanvasCoord(const Foundation::CFLRect< int32_t > &flr) const
클라이언트 좌표를 캔버스 좌표로 변환합니다.
virtual Foundation::CFLPoint< int32_t > ConvertClientCoordToCanvasCoord(int32_t i32X, int32_t i32Y) const
클라이언트 좌표를 캔버스 좌표로 변환합니다.
virtual Foundation::CFLPoint< double > ConvertClientCoordToImageCoord(int32_t i32X, int32_t i32Y) const
클라이언트 좌표를 이미지 좌표로 변환합니다.
virtual const CResult SelectMenuItem(EGUIViewDrawingMeasurementMode eMenuItemViewDrawing)
선택한 메뉴 아이템에 대한 명령을 수행합니다.
virtual uint8_t GetDecimalPlaceOfCoordinate() const
마우스 커서 위치에 출력되는 이미지 좌표의 소수점 표시 자릿수를 얻어 옵니다.
virtual Foundation::CFLRect< double > ConvertCanvasCoordToImageCoord(const Foundation::CFLRect< int32_t > &flr) const
캔버스 좌표를 이미지 좌표로 변환합니다.
CGUIViewImageLayer * GetLayerByName(const std::wstring &strLayerName, const CGUIViewImageLayer *pLayerRTTI)
매개변수로 전달된 이름을 가진 레이어 포인터를 얻어 옵니다. 해당 이름을 가진 레이어가 없을 경우 새로 생성합니다.
virtual const CResult ClearFile()
뷰를 클리어 합니다.
virtual Foundation::CFLPoint< int32_t > ConvertImageCoordToCanvasCoord(const Foundation::CFLPoint< double > &flp) const
이미지 좌표를 캔버스 좌표로 변환합니다.
EStatusPaneItem
상태 바 아이템
Definition GUIViewDrawing.h:97
@ EStatusPaneItem_CursorXValue
마우스 커서 X 좌표 값 아이템
Definition GUIViewDrawing.h:176
@ EStatusPaneItem_CursorXCaption
마우스 커서 X 좌표 제목 아이템
Definition GUIViewDrawing.h:168
@ EStatusPaneItem_WidthValue
너비 값 아이템
Definition GUIViewDrawing.h:128
@ EStatusPaneItem_FileNameCaption
파일 이름 제목 아이템
Definition GUIViewDrawing.h:104
@ EStatusPaneItem_WidthCaption
너비 제목 아이템
Definition GUIViewDrawing.h:120
@ EStatusPaneItem_ZoomCaption
줌 제목 아이템
Definition GUIViewDrawing.h:152
@ EStatusPaneItem_ItemCount
enum 개수
Definition GUIViewDrawing.h:200
@ EStatusPaneItem_FileNameValue
파일 이름 값 아이템
Definition GUIViewDrawing.h:112
@ EStatusPaneItem_ZoomValue
줌 값 아이템
Definition GUIViewDrawing.h:160
@ EStatusPaneItem_CursorYValue
마우스 커서 Y 좌표 값 아이템
Definition GUIViewDrawing.h:192
@ EStatusPaneItem_HeightCaption
높이 제목 아이템
Definition GUIViewDrawing.h:136
@ EStatusPaneItem_HeightValue
높이 값 아이템
Definition GUIViewDrawing.h:144
@ EStatusPaneItem_CursorYCaption
마우스 커서 Y 좌표 제목 아이템
Definition GUIViewDrawing.h:184
virtual void SetAvailableViewDrawingContextMenuFigure(EAvailableViewDrawingFigureContextMenu eMenu)
도면 뷰의 Figure 에 대해 가능한 컨텍스트 메뉴를 설정합니다.
virtual Foundation::CFLPoint< int32_t > ConvertImageCoordToCanvasCoord(double f64X, double f64Y) const
이미지 좌표를 캔버스 좌표로 변환합니다.
double GetPixelAccuracyY() const
도면 뷰의 Pixel Accuracy X 를 얻어옵니다.
virtual Foundation::CFLPoint< double > ConvertCanvasCoordToImageCoord(const Foundation::CFLPoint< int32_t > &flp) const
캔버스 좌표를 이미지 좌표로 변환합니다.
virtual const CResult ZoomFitToLayer(const CGUIViewImageLayer *pLayer)
선택한 레이어 위에 그려진 도형 및 텍스트가 화면에 꽉 차도록 스케일 및 오프셋을 조정합니다.
virtual bool IsImageCoordinateOnCursorVisible() const
도면 뷰에서 마우스 커서 위치에 이미지 좌표를 디스플레이 할 지 여부를 얻어옵니다.
virtual const CResult SetTeachingMode(EGUIViewDrawingTeachingMode eTeachingMode)
현재 뷰를 도형 또는 측정 등을 티칭하는 모드로 설정하거나, 설정 해제합니다.
virtual bool IsImageMiniMapVisible() const
미니맵 show/hide 여부를 얻어옵니다.
virtual void SetZoomMode(EZoomMode eZoomMode)
마우스 왼쪽 버튼 클릭 액션에 Zoom 모드를 설정하거나 설정 해제합니다.
virtual void ShowImageMiniMap(bool bShow)
미니맵 show/hide 여부를 설정합니다.
virtual Foundation::CFLPoint< int32_t > ConvertImageCoordToClientCoord(const Foundation::CFLPoint< double > &flp) const
이미지 좌표를 클라이언트 좌표로 변환합니다.
double GetZoomFitScale(double f64CanvasWidth, double f64CanvasHeight) const
이미지의 너비와 높이, 이미지를 draw 할 영역의 너비와 높이에 따른 Zoom fit 상태에서의 스케일을 얻어 옵니다. 이미지의 너비와 높이는 현재 도면 뷰에 띄워진 이미지의 크기...
CGUIViewDrawing * GetRootSyncView(EViewDrawingSyncOption eViewDrawingSyncOption) const
특정 옵션에 대해 현재 도면 뷰와 동기화 되어 있는 root view 를 얻어 옵니다.
virtual bool GetLayerAutoClearMode(int32_t i32LayerIndex, ELayerAutoClearMode eMode) const
지정한 모드에 대한 레이어의 자동 클리어 상태를 얻어 옵니다.
뷰의 기반 클래스
Definition GUIViewImageBase.h:43
이미지 뷰 위에 도형 또는 문자 등을 그릴 수 있는 레이어 클래스
Definition GUIViewImageLayer.h:45
ELengthUnit
길이 단위를 나타냅니다.
Definition DefinitionsFoundation.h:77
EMenuItemViewDrawing
Drawing 뷰의 팝업 메뉴 아이템
Definition GUIViewDrawingDefinitions.h:29
EViewDrawingLoadOption
도면 뷰의 불러오기 옵션 Example. 다음 코드는 재귀적인 폴더를 로드합니다. eOption = Load | RecursiveIfFolder
Definition GUIViewDrawingDefinitions.h:1436
EGUIViewDrawingTeachingMode
Drawing 뷰의 티칭 모드
Definition GUIViewDrawingDefinitions.h:1125
EFigureObjectInformationText
도형 객체의 정보를 나타내는 문자열 옵션
Definition GUIDefinitions.h:6804
EGUIViewDrawingHitArea
도면 뷰 위에서 마우스가 위치한 영역입니다.
Definition GUIViewDrawingDefinitions.h:1301
ELayerAutoClearMode
이미지 뷰 레이어의 자동 클리어 모드로, 사용자가 CGUIViewImageLayer 의 Clear() 함수를 명시적으로 호출하지 않아도 자동으로 Layer 의 자동 클리어가 적용되는...
Definition GUIDefinitions.h:5405
EGUIViewDrawingMeasurementMode
Drawing 뷰의 측정 모드
Definition GUIViewDrawingDefinitions.h:1162
EAvailableViewDrawingContextMenu
도면 뷰에 대한 가능한 컨텍스트 메뉴
Definition GUIViewDrawingDefinitions.h:692
EViewDrawingSyncOption
Drawing 뷰 동기화 옵션
Definition GUIViewDrawingDefinitions.h:1700
EZoomMode
이미지 뷰의 스케일 설정 모드입니다.
Definition GUIDefinitions.h:5245
EAvailableViewDrawingFigureContextMenu
도형 객체에 대한 가능한 컨텍스트 메뉴
Definition GUIViewDrawingDefinitions.h:1532