WPF - XDL Tutorial (piXoneer XDL Tutorial)
NXMapView¸¦ Ȱ¿ëÇÏ¿© À§¼º¿µ»ó »ùÇÃÀÇ Æ¯Á¤ ¹êµå¸¦ ¼±ÅÃÇØ RGB³ª Gray·Î µµ½ÃÇÏ´Â ÇÁ·Î±×·¥À» ¸¸µå´Â ¹æ¹ý¿¡ ´ëÇØ¼ ¼³¸íÇÕ´Ï´Ù.
2019. 04.
|
¸ñÂ÷
1.2 NXMapView»ç¿ëÀ» À§ÇÑ °³¹ß ȯ°æ ¼³Á¤ 1.5 NXMapViewÀ̹ÌÁö ÆÄÀÏ µµ½ÃÇϱâ
|
1 »ç¿ë Çϱâ1.1 XDL ¿£Áø¼³Ä¡ ÇÁ·Î±×·¥À¸·Î ¹èÆ÷µÇ´Â XDL ¿£ÁøÀº Visual Studio 2010 x86 Release ¹öÀüÀ¸·Î, Visual Studio 2010 ÀÌ»óÀÇ ¹öÀü¿¡¼ »ç¿ë °¡´ÉÇÏ´Ù. ¾Æ·¡ÀÇ ¼³¸íÀº Visual Studio 2015À» ±âÁØÀ¸·Î ÇϰڴÙ.
1.2 NXMapView»ç¿ëÀ» À§ÇÑ °³¹ß ȯ°æ ¼³Á¤1.2.1 Visual Studio 2015À» ½ÇÇàÇÑ´Ù.1.2.2 ¸Þ´º [ÆÄÀÏ]-[»õ·Î ¸¸µé±â]-[ÇÁ·ÎÁ§Æ®]¸¦ ¼±ÅÃÇÑ´Ù.
1.2.3 [»õ ÇÁ·ÎÁ§Æ®] ´ëÈ»óÀÚ¿¡¼ ¿ÞÂÊÀÇ ÅÛÇø´ â¿¡¼ ¡°Visual C#¡±À» ¼±ÅÃÇϰí, ´ëÈ»óÀÚ Áß°£ÀÇ ¸ñ·Ï¿¡¼ ¡°WPF ÀÀ¿ë ÇÁ·Î±×·¥¡±À» ¼±ÅÃÇÑ´Ù.»ç¿ëÀÚ°¡ ¿øÇÏ´Â °æ·Î¸¦ ¼±ÅÃÇÑ ´ÙÀ½ ÇÁ·ÎÁ§Æ® À̸§À» ¡°XDL_MapView1¡± À¸·Î ÀÔ·ÂÇϰí [»õ ÇÁ·ÎÁ§Æ®] ´ëÈ»óÀÚÀÇ ¡°È®ÀΡ± ¹öưÀ» Ŭ¸¯ÇÑ´Ù. ÀÌ ¹®¼¿¡¼´Â ´ëÈ»óÀÚ ¿À¸¥ÂÊ ¾Æ·¡¿¡ ÀÖ´Â ¡°¼Ö·ç¼Ç¿ë µð·ºÅ͸® ¸¸µé±â¡±´Â ¼±ÅÃÇÏÁö ¾Ê°Ú´Ù. ¡°È®ÀΡ± ¹öưÀ» ´©¸£¸é ÇÁ·ÎÁ§Æ®°¡ ±âº»ÀûÀ¸·Î »ý¼ºµÇ°í ȸ鿡 WindowÀ» µðÀÚÀÎÇÒ ¼ö Àִ ȸéÀÌ ¶á´Ù. ¸¸¾à ¾Æ·¡¿Í °°Àº Window âÀÌ »ý¼ºµÇÁö ¾ÊÀ¸¸é, [¼Ö·ç¼Ç Ž»ö±â] â¿¡¼ MainWindow.xaml¡±¸¦ ¸¶¿ì½º ´õºíŬ¸¯À» ÇÏ¿© âÀ» ¿¬´Ù.
1.2.4 ¼Ö·ç¼Ç Ž»ö±âÀÇ ÇÁ·ÎÁ§Æ® ÇϺÎÀÇ [ÂüÁ¶]ÀÇ ¿À¸¥ÂÊ ¸¶¿ì½º Ŭ¸¯À» ÅëÇØ [ÂüÁ¶Ãß°¡]¸¦ ¼±ÅÃÇÑ´Ù.1.2.5 [ã¾Æº¸±â]ÅÇÀ¸·Î À̵¿ÇÑ ÈÄ ¡°C:\Pixoneer\XDL1.2\bin\¡±°æ·Î·Î À̵¿ÇÑ´Ù. Ctrl۸¦ ´©¸¥ ä ¿¬¼ÓÀ¸·Î ¡°NXDL.dll¡±, ¡°NXDLcc.dll¡±, ¡°NXDLgr.dll¡±, ¡°NXDLio.dll¡±, ¡°NXDLrs.dll¡±, ¡°NXMap.dll¡±À» ¼±ÅÃÇÑ ÈÄ ¡°È®ÀΡ±¹öưÀ» ¼±ÅÃÇÑ´Ù.1.2.6 ¼Ö·ç¼Ç Ž»ö±âÀÇ ÇÁ·ÎÁ§Æ® ÇϺÎÀÇ [ÂüÁ¶]Ç׿¡ NXDL, NXDLcc, NXDLgr, NXDLio, NXDLrs, NXMapÀÌ Ãß°¡µÇ¾úÀ½À» È®ÀÎÇÑ´Ù.1.2.7 MapView ¸¦ Ȱ¿ëÇϱâ À§ÇØ MainWindow.xaml â¿¡¼ namespace¸¦ ´ÙÀ½°ú °°ÀÌ Ãß°¡ÇÑ´Ù.
1.3 ¸Þ´º »ý¼ºÇϱâ1.3.1 MainWindow.xamlâ¿¡¼ ±âº»À¸·Î »ý¼ºµÈ Grid ·¹À̾ƿô¿¡ Grid.RowDefinitionÀ» ÀÌ¿ëÇÏ¿© µÎ °³ÀÇ RowÀ» »ý¼ºÇÑ´Ù.1.3.2 µµ±¸»óÀÚ¿¡¼ Menu ÄÁÆ®·ÑÀ» ²ø¾î´Ù°¡ ù ¹øÂ° Cell¿¡ ¹èÄ¡ÇÏ°í ¿À¸¥ÂÊ ¹öưÀ» Ŭ¸¯ÇÏ¿© MenuItem Ç׸ñÀ» Ãß°¡ÇÑ´Ù. [¼Ó¼º]â¿¡¼ Header¿¡ ¡°_File¡±À» ÀÔ·ÂÇÏ¿© ¸Þ´º¸¦ »ý¼ºÇÑ´Ù.À§ÀÇ ±×¸²°ú °°ÀÌ µµ±¸ »óÀÚ¿¡¼ Menu ÄÁÆ®·ÑÀ» Windowâ¿¡ ¹èÄ¡ÇÑ´Ù.Menu°¡ Window¿¡ ¹èÄ¡µÈ °ÍÀ» È®ÀÎÇϰí Menu¸¦ ¿À¸¥ÂÊ ¹öưÀ» ´·¯ MenuItemÀ» Ãß°¡ÇÑ´Ù.»ó´Ü ¸Þ´º¿¡¼ [º¸±â] –[¼Ó¼º â]À» ´·¯ ¡°¼Ó¼º ⡱À¸·Î À̵¿ÇÑ ´ÙÀ½ Header¿¡ ¡°_File¡±À» ÀÔ·ÂÇÑ´Ù.¾Æ·¡¿Í °°Àº ¸Þ´º°¡ »ý¼ºµÆÀ½À» È®ÀÎÇÑ´Ù.
´ÙÀ½À¸·Î [File]À» ¿À¸¥ÂÊ ¹öưÀ» Ŭ¸¯Çϰí MenuItemÀ» Ãß°¡ÇÑ´Ù. [File] ÇϺο¡ MenuItemÀÌ »ý¼ºµÈ °ÍÀ» È®ÀÎÇÒ ¼ö ÀÖ´Ù. »ý¼ºµÈMenuItemÀÇ [¼Ó¼º]â¿¡ HeaderÀ» ¡°_Open¡±À¸·Î ÀÔ·ÂÇϰí À̸§Àº ¡°openFileMenuItem¡±À¸·Î Á¤ÀÇÇÑ´Ù. ´ÙÀ½°ú °°Àº WindowâÀÌ »ý¼ºµÈ´Ù.
XAML ÄÚµå´Â ¾Æ·¡¿Í °°ÀÌ »ý¼ºµÊÀ» ¾Ë ¼ö ÀÖ´Ù.
1.4 NXMapViewÄÁÆ®·Ñ Ãß°¡Çϱâ1.4.1 µÎ ¹øÂ° Cell¿¡ Grid¸¦ ¹èÄ¡ÇÑ´Ù. WindowsFormsHost ÄÁÆ®·ÑÀ» µµ±¸»óÀڷκÎÅÍ ²ø¾î¼ »ý¼ºÇϰųª XAML â¿¡ ÀÔ·ÂÇÏ¿© »ý¼ºÇÑ´Ù. ÀÌ´Â Window forms¸¦ Hosting ÇØÁÖ´Â °³Ã¼À̸ç Window Forms ControlÀ» »ç¿ëÇÒ ¶§ ÀÌ¿ëµÈ´Ù. (WindowFormIntegration¿Í System.Window.FormsÀ» ¾î¼Àºí¸®¿¡ ´ëÇÑ ÂüÁ¶ Ãß°¡¸¦ ÇÑ´Ù.)»¡°£»ö ¿øÀ» Ŭ¸¯ÇÑ »óÅ·ΠWindowFormsHostâÀÇ Å©±â¸¦ º¯È½ÃÄÑ µÎ ¹øÂ° Row Gridâ¿¡ ¸Â°Ô Á¶Á¤ÇÑ´Ù. ´ÙÀ½°ú °°Àº Window âÀ» ¾òÀ» ¼ö ÀÖ´Ù.
1.4.2 ¾Õ¼ Ãß°¡ÇÑ namespaceÀÎ nxMap¸¦ ÀÌ¿ëÇÏ¿© NXMapViewÄÁÆ®·ÑÀ» ºÒ·¯¿Â´Ù. ÀÌ NXMapViewÀÇ À̸§(Name)Àº nxMapView1À¸·Î ÇÑ´Ù.NXMapView´Â ´Ù¾çÇÑ NXMapLayerXXXXXµéÀ» ´ãÀ»¼ö ÀÖ´Â ÄÁÅ×À̳ÊÀÌ´Ù. Áï, NXMapView´Â ´Ù¾çÇÑ °èÃþÀÇ ·¹À̾î·Î ±¸¼ºÇÏ¿© ¿µ»óµµ½Ã¿¡ ´ëÇÑ ´Ù¾çÇÑ ±â´ÉÀ» ±¸ÇöÀÌ °¡´ÉÇÏ´Ù.
1.4.3 ´ÙÀ½À¸·Î NXMapViewÄÁÆ®·Ñ À§¿¡ NXMapLayerComposite ÄÁÆ®·ÑÀ» ÀÔ·ÂÇÑ´Ù. ÀÌ NXMapLayerCompositeÀÇ À̸§(Name)Àº nxMapLayerComposites1À̶ó°í ÇÑ´Ù.NXMapLayerCompositesÀº ¿µ»óÀÇ ¹êµåµéÀ» ÇÕ¼º½ÃÄѼ ȸ鿡 µµ½ÃÇÏ´Â ±â´ÉÀ» ¼öÇàÇÏ´Â ÄÁÆ®·ÑÀÌ´Ù.
1.4.4 [F5]Űº¸µå¸¦ ´·¯ ½ÇÇàÇØ º»´Ù. ´ÙÀ½°ú °°ÀÌ °ËÁ¤»ö ȸéÀÌ ³ª¿Â´Ù.
1.5 NXMapViewÀ̹ÌÁö ÆÄÀÏ µµ½ÃÇϱâ1.5.1 [Open]ÀÇ MenuItemÀÇ ¼Ó¼º¿¡¼ Click À̺¥Æ® ÄÀ» ´õºí Ŭ¸¯ÇÏ¿© Click¿¡ ´ëÇÑ ÀÚµ¿ÇÔ¼ö¸¦ »ý¼ºÇÑ´Ù.
1.5.2 MainWindow.xaml.cs¿¡¼ »ç¿ëÇÒ ³×ÀÓ½ºÆäÀ̽º¸¦ Ãß°¡ÇÑ´Ù.
1.5.3
Window¸¦ ¼±ÅÃÇϰí [¼Ó¼º] â - [À̺¥Æ®
|