Programming ArcObjects in Visual C++ : ATL/COM
▣ 개요 ArcCatalog와 ArcMap 프로그램에서 사용하는 모든 UI Command(버튼, 메뉴 등)는 COM 기반에서 만들어집니다. COM을 지원하는 개발 환경(Visual Basic, .NET(C#, VB.Net), C++)에서 Custom Command를 만들 수 있으며, ActiveX DLL 형태로 배포됩니다. 일반적인 SystemUI Command는 다음과 같습니다. - Button과 Menu 아이템은 Command의 가장 단순한 형태입니다. 일반적으로 Button은 툴바에 아이콘 형식으로, Menu 아이템은 메뉴에 표시됩니다. 이들은 버튼이나 메뉴를 클릭했을 때 기능을 수행합니다. - Tool은 Button과 유사하나 Application의 Display와 상호작용을 통해 기능이 수행됩니다. 버튼을 누르고 지도에서 드래그하여 영역을 지정하면 확대되는 Zoom In 버튼이 그 예입니다. - Tool Control은 ComboBox, CheckBox, EditBox(TextBox) 등을 통하여 기능이 수행됩니다. ArcMap의 축척을 설정하는 콤보박스나 편집도구의 편집레이어 선택 콤보박스가 그 예입니다. 아래 첨부 매뉴얼 및 샘플 소스코드는 Visual C++ ATL/COM을 이용하여 ArcGIS Desktop 또는 ArcGIS Engine에서 사용 가능한 ICommand, ITool, IToolControl, IMenuDef, IToolBarDef 확장 방법을 제공합니다. ▣ 개발환경 - ArcGIS Engine 또는 ArcGIS Desktop Development Kit 9.3 - Microsoft Visual Studio 2008 Visual C++ ▣ 대상 - ArcObjects를 이용해Visual Basic, .Net C# 환경에서 COM 프로그래밍 경험이 있는 개발자로서 VC++ 환경에서 ATL/COM 커스터마이징을 필요로하는 개발자. - VC++을 이용하여 Arc...