{"id":1407,"date":"2011-05-02T06:40:58","date_gmt":"2011-05-02T06:40:58","guid":{"rendered":"http:\/\/www.gisdeveloper.co.kr\/?p=1407"},"modified":"2017-02-11T18:10:35","modified_gmt":"2017-02-11T09:10:35","slug":"fingereyes-%ec%b0%a8%ed%8a%b8-%ed%91%9c%ec%8b%9c%ed%95%98%ea%b8%b0%ec%b0%a8%ed%8a%b8-%eb%a0%88%ec%9d%b4%ec%96%b4-%ec%b6%94%ea%b0%80","status":"publish","type":"post","link":"http:\/\/www.gisdeveloper.co.kr\/?p=1407","title":{"rendered":"[GIS] FingerEyes, \ucc28\ud2b8 \ud45c\uc2dc\ud558\uae30(\ucc28\ud2b8 \ub808\uc774\uc5b4 \ucd94\uac00)"},"content":{"rendered":"<p>\ud551\uac70\uc544\uc774\uc988\uc5d0 \ub300\ud55c \ub9c8\uc9c0\ub9c9 API \uc0ac\uc6a9 \uc2e4\uc2b5 \ud29c\ud1a0\ub9ac\uc5bc\ub85c\uc368 \uacf5\uac04\uc0c1\uc5d0 \uc758\ubbf8\uc788\uac8c \ubd84\ud3ec\ub418\uc5b4 \uc788\ub294 \uc218\uce58\ub370\uc774\ud130\ub97c \ucc28\ud2b8\ub85c \ud45c\ud604\ud558\ub294 \uae30\ub2a5\uc5d0 \ub300\ud574 \uc0b4\ud3b4\ubcf4\uaca0\uc2b5\ub2c8\ub2e4. \uc774 \uae00\uc5d0 \ub300\ud55c \ucd5c\uc885 \uacb0\uacfc\uc5d0 \ub300\ud55c \uc2e4\ud589\uc740 \uc544\ub798\uc640 \uac19\uc2b5\ub2c8\ub2e4. \uac01 \uc9d1\uacc4\uad6c\uc5d0 \ub098\uc774\ub300\ubcc4 \uc778\uad6c\uc218\ub97c \ud30c\uc774\ucc28\ud2b8\ub85c \ud45c\ud604\ud558\ub294 \uc608\uc785\ub2c8\ub2e4.<\/p>\n<p><center><a href=\"http:\/\/www.gisdeveloper.co.kr\/FingerEyes-Xr\/addChartLayer\/\" target=\"_blank\"><a href=\"http:\/\/www.gisdeveloper.co.kr\/FingerEyes-Xr\/addChartLayer\/\"><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/www.gisdeveloper.co.kr\/wp-content\/uploads\/1\/1131330158.png\" class=\"aligncenter\" width=\"510\" height=\"418\" alt=\"\uc0ac\uc6a9\uc790 \uc0bd\uc785 \uc774\ubbf8\uc9c0\" \/>\uc2e4\ud589 \uacb0\uacfc \ubcf4\uae30 \ubc0f \uc18c\uc2a4\ucf54\ub4dc \ub2e4\uc6b4\ub85c\ub4dc<\/a><\/center><\/p>\n<p>\uc704\uc758 \uc2e4\ud589 \uacb0\uacfc\ub97c \uc0b4\ud3b4\ubcf4\uba74 \uc5b4\ud50c\ub9ac\ucf00\uc774\uc158\uc5d0 \ub300\ud55c UI\ub294 \ucd1d 3\uac1c\uc785\ub2c8\ub2e4. \ucc28\ud2b8\ud45c\uc2dc\ub77c\ub294 \ubc84\ud2bc, \ubc94\ub840\ud45c\uc2dc\ub77c\ub294 \ubc84\ud2bc \uadf8\ub9ac\uace0 \ub9f5 \ucef4\ud3ec\ub10c\ud2b8\uc785\ub2c8\ub2e4. \uc774 UI\ub97c \uad6c\uc131\ud558\uae30 \uc704\ud574 \uba3c\uc800 MXML Application\uc744 \ucd94\uac00\ud558\uace0 UI \uad6c\uc131\uc744 \uc704\ud55c MXML\uc5d0 \ub2e4\uc74c\uacfc \uac19\uc740 \ucf54\ub4dc\ub97c \ucd94\uac00\ud569\ub2c8\ub2e4.<\/p>\n<pre>\r\n<xr:XrMap id=\"map\" width=\"100%\" height=\"100%\" \/>\r\n    <s:HGroup paddingLeft=\"4\" paddingTop=\"4\">\r\n        <mx:Button label=\"\ucc28\ud2b8\ud45c\uc2dc\" click=\"onChartClick(event)\" \/>\r\n        <mx:Button label=\"\ubc94\ub840\ud45c\uc2dc\" click=\"onLegendClick(event)\" \/>\r\n    <\/s:HGroup><br>\r\n<\/pre>\n<p>\ub9f5 \ucef4\ud3ec\ub10c\ud2b8\uc5d0 \ub300\ud55c \ub124\uc784\uc2a4\ud398\uc774\uc2a4\ub97c xr\ub85c \uc7a1\uace0 \uc788\ub294\ub370 \uc774 \ub124\uc784\uc2a4\ud398\uc774\uc2a4\uac00 \uc720\ud6a8\ud558\uae30 \uc704\ud574\uc11c\ub294 Application \ud0dc\uadf8\ucabd\uc5d0 \ub2e4\uc74c\uacfc \uac19\uc740 \ub124\uc784\uc2a4\ud398\uc774\uc2a4 \uc18d\uc131\uc774 \ud544\uc694\ud569\ub2c8\ub2e4.<\/p>\n<pre>\r\n<s:Application xmlns:xr=\"geoservice.*\">\r\n<\/pre>\n<p>\ub2e4\uc2dc UI \uad6c\uc131\uc744 \uc704\ud55c \ucf54\ub4dc\ub97c \uc0b4\ud3b4\ubcf4\uba74.. \ub9f5 \ucef4\ud3ec\ub10c\ud2b8\uc758 id\ub97c map\uc73c\ub85c \uc8fc\uc5b4 \ub2e4\ub978 \ucf54\ub4dc\ubd80\uc5d0\uc11c \ucc38\uc870\ud560 \uc218 \uc788\uac8c \ud588\uc73c\uba70 \ucc28\ud2b8\ud45c\uc2dc \ubc84\ud2bc\uc758 \uc774\ubca4\ud2b8\ub294 onChartClick \ud578\ub4e4\ub7ec \ud568\uc218\uc5d0 \ud560\ub2f9\ud588\uace0 \ubc94\ub840\ud45c\uc2dc\ub294 onLegendClick \ud578\ub4e4\ub7ec \ud568\uc218\uc5d0 \ud560\ub2f9\ud588\uc2b5\ub2c8\ub2e4. \uc774 \ub450\uac1c\uc758 \ud578\ub4e4\ub7ec \ud568\uc218\uc5d0 \uc9d1\uc911\ud558\uae30 \uc804\uc5d0 \uba3c\uc800 \ubc30\uacbd\uc774 \ub418\ub294 \uc9c0\ub3c4 \ub808\uc774\uc5b4\ub97c \uad6c\uc131\ud558\ub294 \ucf54\ub4dc\ub97c \uc0b4\ud3b4\ubcf4\uaca0\uc2b5\ub2c8\ub2e4. \uc9c0\ub3c4 \ub808\uc774\uc5b4 \uc900\ube44\ub294 \uc5b4\ud50c\ub9ac\ucf00\uc774\uc158\uc758 initialize \uc774\ubca4\ud2b8\uac00 \uc801\ub2f9\ud558\uba70 \uc5ec\uae30\uc11c\ub294 onInit \ud578\ub4e4\ub7ec \ud568\uc218\uc5d0 \uc774 \uc774\ubca4\ud2b8\ub97c \ud560\ub2f9\ud588\uc2b5\ub2c8\ub2e4.<\/p>\n<pre>protected function onInit(event:FlexEvent):void\r\n{\r\n    var lyr:XrTileMapLayer = new XrTileMapLayer(\"basemap\", \r\n        \"http:\/\/www.geoservice.co.kr\/tilemap1\");\r\n    map.layers.addLayer(lyr);\r\n    \r\n    map.viewControls.scaleLevels = \r\n    [\r\n        3000000, 1800000, 800000, 460000, 250000, \r\n        110000, 50000, 25000, 14000, 7500, 3500, 2000\r\n    ];\r\n    map.moveMap(new XrCoordinate(317782, 544590));\r\n    map.viewControls.scaleLevel = 11;\r\n    \r\n    var lyr2:XrShapeMapLayer = new XrShapeMapLayer(\"population\", \r\n        \"http:\/\/www.geoservice.co.kr:8080\/Xr?layerName=population_polygon\");\r\n    lyr2.theme.properties = \r\n    {\r\n        fillColor:0xff000000, fillAlpha:0.01, \r\n        lineThickness:2.0, lineAlpha:1.0, lineColor:0xff5522\r\n    };\r\n    lyr2.requestAttributeAlways = true;\r\n    lyr2.visibleByLevel = true;\r\n    lyr2.fromVisibleLevel = 10;\r\n    lyr2.toVisibleLevel = 11;\r\n    map.layers.addLayer(lyr2);\r\n    \r\n    addChartLayer();\r\n}<\/pre>\n<p>3~5\ubc88 \ucf54\ub4dc\ub294 \ubc30\uacbd\ub3c4\ub85c\uc368 \ud0c0\uc77c\ub9f5 \ub808\uc774\uc5b4\ub97c \ucd94\uac00\ud558\ub294 \ucf54\ub4dc\uc774\uace0 7~13\ubc88 \ucf54\ub4dc\ub294 \uc5b4\ud50c\ub9ac\ucf00\uc774\uc158\uc774 \uc2dc\uc791\ud560\ub54c \ucd08\uae30 \uc9c0\ub3c4\ubdf0\ub97c \uc124\uc815\ud558\ub294 \ucf54\ub4dc\uc774\uba70 15~26\ubc88 \ucf54\ub4dc\ub294 \ucc28\ud2b8 \ub370\uc774\ud130\ub97c \uc704\ud55c Shape \uc9c0\ub3c4 \ub808\uc774\uc5b4\ub97c \ucd94\uac00\ud558\ub294 \ucf54\ub4dc\uc785\ub2c8\ub2e4. 17~21\ubc88 \ucf54\ub4dc\ub294 Shape \uc9c0\ub3c4 \ub808\uc774\uc5b4\uc758 \uadf8\ub9ac\uae30 \uc2ec\ubc8c\uc744 \uc9c0\uc815\ud558\ub294 \ucf54\ub4dc\uc774\uace0 22\ubc88 \ucf54\ub4dc\ub294 \ud1b5\uacc4 \ub370\uc774\ud130\uc5d0 \ub300\ud55c \uc18d\uc131\uac12\uc744 \ud560\ub2f9 \uc11c\ubc84\ub85c\ubd80\ud130 \uac00\uc838\uc624\ub77c\ub294 \uc758\ubbf8\uc785\ub2c8\ub2e4. \uadf8\ub9ac\uace0 23~25\ubc88 \ucf54\ub4dc\ub294 \ud574\ub2f9 Shape \ub9f5 \ub808\uc774\uc5b4\uac00 \uc0ac\uc6a9\uc790\uc5d0\uac8c \ubcf4\uc5ec\uc9c0\ub294 \ub808\ubca8\uc744 10~11\ub2e8\uacc4 \uc0ac\uc774\uc5d0\uc11c\ub9cc \ubcf4\uc5ec\uc9c0\ub3c4\ub85d \ud558\uaca0\ub2e4\ub294 \uc758\ubbf8\uc785\ub2c8\ub2e4. \ub05d\uc73c\ub85c 28\ubc88 \ucf54\ub4dc\ub294 \uc0ac\uc6a9\uc790 \uc815\uc758\ud568\uc218\ub85c \uc5ec\uae30\uc5d0 \ucc28\ud2b8 \ud45c\uc2dc\ub97c \uc704\ud55c \ucc28\ud2b8 \ub808\uc774\uc5b4 \ucd94\uac00\ub97c \uc704\ud55c \ud568\uc218\uc785\ub2c8\ub2e4. addChartLayer \ud568\uc218\ub97c \uc0b4\ud3b4\ubcf4\uaca0\uc2b5\ub2c8\ub2e4.<\/p>\n<pre>private function addChartLayer():void\r\n{\r\n    var chartLyr:XrChartLayer = new XrChartLayer(\"chart\", null);\r\n    chartLyr.defines.stroke.color = 0xffffff;\r\n    chartLyr.defines.stroke.thickness = 2;\r\n    \r\n    var fillSym1:XrFillSymbol = new XrFillSymbol({fillColor:0xff1111});\r\n    var fillSym2:XrFillSymbol = new XrFillSymbol({fillColor:0xff4444});\r\n    var fillSym3:XrFillSymbol = new XrFillSymbol({fillColor:0xff8888});\r\n    var fillSym4:XrFillSymbol = new XrFillSymbol({fillColor:0xffbbbb});\r\n    var fillSym5:XrFillSymbol = new XrFillSymbol({fillColor:0xffdddd});\r\n    var fillSym6:XrFillSymbol = new XrFillSymbol({fillColor:0x11ff11});\r\n    var fillSym7:XrFillSymbol = new XrFillSymbol({fillColor:0x44ff44});\r\n    var fillSym8:XrFillSymbol = new XrFillSymbol({fillColor:0x88ff88});\r\n    var fillSym9:XrFillSymbol = new XrFillSymbol({fillColor:0xccffcc});\r\n    var fillSym10:XrFillSymbol = new XrFillSymbol({fillColor:0x1111ff});\r\n    var fillSym11:XrFillSymbol = new XrFillSymbol({fillColor:0x4444ff});\r\n    var fillSym12:XrFillSymbol = new XrFillSymbol({fillColor:0x8888ff});\r\n    var fillSym13:XrFillSymbol = new XrFillSymbol({fillColor:0xbbbbff});\r\n    var fillSym14:XrFillSymbol = new XrFillSymbol({fillColor:0xddddff});\r\n    \r\n    chartLyr.defines.add(\"4\uc138 \uc774\ud558\", fillSym1);\r\n    chartLyr.defines.add(\"5~9\uc138\", fillSym2);\r\n    chartLyr.defines.add(\"10~14\uc138 \uc774\ud558\", fillSym3);\r\n    chartLyr.defines.add(\"15~19\uc138 \uc774\ud558\", fillSym4);\r\n    chartLyr.defines.add(\"20~24\uc138 \uc774\ud558\", fillSym5);\r\n    chartLyr.defines.add(\"25~29\uc138 \uc774\ud558\", fillSym6);\r\n    chartLyr.defines.add(\"30~34\uc138 \uc774\ud558\", fillSym7);\r\n    chartLyr.defines.add(\"35~39\uc138 \uc774\ud558\", fillSym8);\r\n    chartLyr.defines.add(\"40~44\uc138 \uc774\ud558\", fillSym9);\r\n    chartLyr.defines.add(\"44~49\uc138 \uc774\ud558\", fillSym10);\r\n    chartLyr.defines.add(\"50~54\uc138 \uc774\ud558\", fillSym11);\r\n    chartLyr.defines.add(\"55~59\uc138 \uc774\ud558\", fillSym12);    \r\n    chartLyr.defines.add(\"60~64\uc138 \uc774\ud558\", fillSym13);\r\n    chartLyr.defines.add(\"65\uc138 \uc774\uc0c1\", fillSym14);\r\n    \r\n    map.layers.addLayer(chartLyr);    \r\n}<\/pre>\n<p>3\ubc88\ucf54\ub4dc\uac00 \ucc28\ud2b8 \ub808\uc774\uc5b4\ub97c \uc0dd\uc131\ud558\ub294 \ucf54\ub4dc\uc785\ub2c8\ub2e4. \uadf8\ub9ac\uace0 4~5\ubc88 \ucf54\ub4dc\ub294 \ucc28\ud2b8 \ub808\uc774\uc5b4\ub97c \uadf8\ub9b4\ub54c \uc678\uacfd\uc120\uc5d0 \ub300\ud55c \uc2ec\ubc8c\uc785\ub2c8\ub2e4. \uadf8\ub9ac\uace0 7~20\ubc88\uc740 \ucc28\ud2b8\ub97c \uadf8\ub9b4\ub54c \uc0ac\uc6a9\ud558\ub294 \ucc44\uc6c0\uc2ec\ubc8c\uc744 \uc704\ud55c \uac83\uc73c\ub85c \ucd1d 14\uac1c\ub97c \uc0dd\uc131\ud558\uace0 \uc788\uc2b5\ub2c8\ub2e4. \uc65c 14\uac1c\uc778\uac00 \ud558\uba74&#8230; 22~35\ubc88 \ucf54\ub4dc\ub97c \uc0b4\ud3b4\ubcf4\uba74 \uc27d\uac8c \uc774\ud574\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4. \uc6b0\ub9ac\ub294 \ud30c\uc774\ucc28\ud2b8\ub97c \uadf8\ub9b4 \uac83\uc778\ub370.. \uc774 \ucc28\ud2b8\ub97c \uad6c\uc131\ud558\ub294 \uac01 \ud56d\ubaa9\uc774 \ucd1d 14\uac1c\uc774\uace0.. \ub098\uc774\ub300\ubcc4(4\uc138 \uc774\ud558, 5~9\uc138 \ub4f1\ub4f1) \ud56d\ubaa9\uc73c\ub85c \uad6c\uc131\ud558\uac8c \ub429\ub2c8\ub2e4. \uac01 \ud56d\ubaa9\uc5d0 \ub300\ud574 \uc55e\uc11c \uc0dd\uc131\ud574 \ub193\uc740 \ucc44\uc6c0\uc2ec\ubc8c\uc744 \uac01\uac01 \uc9c0\uc815\ud574 \ub193\uace0 \uc788\uc2b5\ub2c8\ub2e4. \uc774\ub7ec\ud55c \uc124\uc815\uc774 \uc801\ub3d9\ub41c \ucc28\ud2b8\ub808\uc774\uc5b4\ub97c 37\ubc88 \ucf54\ub4dc\ub97c \ud1b5\ud574 \ub808\uc774\uc5b4\ub85c\uc368 \ucd94\uac00\ud574 \ub193\uc2b5\ub2c8\ub2e4. \uc774\uc81c \ucc28\ud2b8 \ub808\uc774\uc5b4\uae4c\uc9c0 \ucd94\uac00\ub418\uc5b4 \ucc28\ud2b8\ub97c \uad6c\uc131\ud558\uae30 \uc704\ud55c \uc900\ube44\uac00 \ub05d\ub0ac\uad70\uc694! \ub2e4\uc74c\uc73c\ub85c \ucc28\ud2b8\ud45c\uc2dc \ubc84\ud2bc\uc5d0 \ub300\ud55c \uc774\ubca4\ud2b8 \ucf54\ub4dc\ub97c \uc0b4\ud3b4\ubd04\uc73c\ub85c\uc368 \ucc28\ud2b8\ub97c \uc5b4\ub5bb\uac8c \ud45c\ud604\ud558\ub294\uc9c0 \uc54c\uc544\ubcf4\uaca0\uc2b5\ub2c8\ub2e4!<\/p>\n<pre>protected function onChartClick(event:MouseEvent):void\r\n{\r\n    var chartLyr:XrChartLayer = map.layers.getLayer(\"chart\") as XrChartLayer;\r\n    if(chartLyr == null) return;\r\n    chartLyr.items.clear();\r\n    \r\n    var shpLyr:XrShapeMapLayer = \r\n        map.layers.getLayer(\"population\") as XrShapeMapLayer;\r\n    if(shpLyr != null)\r\n    {\r\n        var shpRows:Object = shpLyr.shapeSet.rows;\r\n        for(var key:String in shpRows)   \r\n        {    \r\n            var shp:XrShape = shpRows[key] as XrShape; \r\n            var centroid:XrCoordinate = shp.centroid;\r\n            if(shp != null)\r\n            {\r\n                var fid:int = shp.fid;\r\n                var row:XrAttribute = shpLyr.attributeSet.rows[fid] as XrAttribute;\r\n                if(row != null)\r\n                {\r\n                    var fs:XrFieldSet = shpLyr.attributeSet.fieldSet;\r\n                    var A00_01:int = fs.getFieldIndex(\"A00_01\");\r\n                    var A00_02:int = fs.getFieldIndex(\"A00_02\");\r\n                    var A00_03:int = fs.getFieldIndex(\"A00_03\");\r\n                    var A00_04:int = fs.getFieldIndex(\"A00_04\");\r\n                    var A00_05:int = fs.getFieldIndex(\"A00_05\");\r\n                    var A00_06:int = fs.getFieldIndex(\"A00_06\");\r\n                    var A00_07:int = fs.getFieldIndex(\"A00_07\");\r\n                    var A00_08:int = fs.getFieldIndex(\"A00_08\");\r\n                    var A00_09:int = fs.getFieldIndex(\"A00_09\");\r\n                    var A00_10:int = fs.getFieldIndex(\"A00_10\");\r\n                    var A00_11:int = fs.getFieldIndex(\"A00_11\");\r\n                    var A00_12:int = fs.getFieldIndex(\"A00_12\");\r\n                    var A00_13:int = fs.getFieldIndex(\"A00_13\");\r\n                    var A00_14:int = fs.getFieldIndex(\"A00_14\");  \r\n\r\n                    var A00_01_value:Number = row.getValueAsDouble(A00_01);\r\n                    var A00_02_value:Number = row.getValueAsDouble(A00_02);\r\n                    var A00_03_value:Number = row.getValueAsDouble(A00_03);\r\n                    var A00_04_value:Number = row.getValueAsDouble(A00_04);\r\n                    var A00_05_value:Number = row.getValueAsDouble(A00_05);\r\n                    var A00_06_value:Number = row.getValueAsDouble(A00_06);\r\n                    var A00_07_value:Number = row.getValueAsDouble(A00_07);\r\n                    var A00_08_value:Number = row.getValueAsDouble(A00_08);\r\n                    var A00_09_value:Number = row.getValueAsDouble(A00_09);\r\n                    var A00_10_value:Number = row.getValueAsDouble(A00_10);\r\n                    var A00_11_value:Number = row.getValueAsDouble(A00_11);\r\n                    var A00_12_value:Number = row.getValueAsDouble(A00_12);\r\n                    var A00_13_value:Number = row.getValueAsDouble(A00_13);\r\n                    var A00_14_value:Number = row.getValueAsDouble(A00_14);\r\n        \r\n                    chartLyr.items.add(new XrChartItem(null, \r\n                    [\r\n                        A00_01_value, A00_02_value, A00_03_value, A00_04_value, \r\n                        A00_05_value, A00_06_value, A00_07_value, A00_08_value, \r\n                        A00_09_value, A00_10_value, A00_11_value, A00_12_value,\r\n                        A00_13_value, A00_14_value\r\n                    ], centroid));\r\n                } \r\n            }\r\n        }\r\n     \r\n        if(!chartLyr.items.build())\r\n        {\r\n             trace(\"Chart Building Error!\");\r\n        }\r\n     \r\n        map.update(false);\r\n    }\r\n}<\/pre>\n<p>\ucf54\ub4dc\uac00 \uc0c1\ub2f9\ud788 \uae34\ud3b8\uc778\ub370\uc694. \uc2e4\uc81c\ub85c \ucc38\uc870\ud558\ub294 \uc18d\uc131\uac12\uc774 14\uac1c\ub098 \ub418\uae30\ub54c\ubb38\uc5d0 \uae38\uc5b4\ubcf4\uc77c\ubfd0\uc785\ub2c8\ub2e4. \ud558\ub098 \ud558\ub098 \uc0b4\ud3b4\ubcf4\uba74 \ub2e8\uc21c\ud569\ub2c8\ub2e4. \uba3c\uc800 3\ubc88\ucf54\ub4dc\ub294 \uc55e\uc11c \ucd94\uac00\ud55c \ucc28\ud2b8 \ub808\uc774\uc5b4\ub97c \uad6c\ud569\ub2c8\ub2e4. \uadf8\ub9ac\uace0 5\ubc88 \ucf54\ub4dc\ub97c \ud1b5\ud574 \uae30\uc874\uc758 \ucc28\ud2b8 \ub370\uc774\ud130\ub97c \uae68\ub057\ud558\uac8c \uc9c0\uc6c0\ub2c8\ub2e4. \uc774\ub807\uac8c \uc9c0\uc6b0\ub2c8 \ub9e4\ubc88 \ubc84\ud2bc\uc744 \ub204\ub97c\ub54c\ub9c8\ub2e4 \uc0c8\ub86d\uac8c \ucc28\ud2b8\ub97c \uad6c\uc131\ud560 \uc218 \uc788\uac8c \ub429\ub2c8\ub2e4. 7\ubc88 \ucf54\ub4dc\ub294 \ucc28\ud2b8\ub97c \uad6c\uc131\ud558\uae30 \uc704\ud55c \uc218\uce58 \ub370\uc774\ud130\ub97c \ucc38\uc870\ud560 Shape \ub9f5 \ub808\uc774\uc5b4\ub97c \uad6c\ud569\ub2c8\ub2e4. 12\ubc88 \ucf54\ub4dc\uc5d0 \ub300\ud55c \ubc18\ubcf5\ubb38\uc744 \ud1b5\ud574 Shape \ub9f5 \ub808\uc774\uc5b4\ub97c \uad6c\uc131\ud558\ub294 \ubaa8\ub4e0 \ub3c4\ud615\uc5d0 \ub300\ud55c \uc911\uc2ec\uc810(15\ubc88 \ucf54\ub4dc)\uc640 \uc774 \ub3c4\ud615\uc758 fid\ub97c \ud1b5\ud574 \uc5bb\uc740 \uc18d\uc131\uac12(19\ubc88 \ucf54\ub4dc)\ub97c \ud1b5\ud574 \ucc28\ud2b8\ub97c \uad6c\uc131\ud558\uac8c \ub429\ub2c8\ub2e4. \ucc38\uace0\ub85c \uc55e\uc11c \ubaa8\ub4e0 \ub3c4\ud615\uc774\ub77c\uace0 \uc5b8\uae09\ud588\uc73c\ub098 \uc2e4\uc81c\ub85c\ub294 \ud654\uba74\uc0c1\uc5d0 \ud45c\uc2dc\ub418\ub294 \ub3c4\ud615\uc785\ub2c8\ub2e4. \ud654\uba74 \ubc16\uc758 \ud45c\uc2dc\ub418\uc9c0 \uc54a\uc740 \ub3c4\ud615\uc740 \ud574\ub2f9\uc0ac\ud56d\uc774 \uc5c6\uc2b5\ub2c8\ub2e4. 23~36\ubc88 \ucf54\ub4dc\uac00 \uc55e\uc11c \uc5b8\uae09\ud55c \ucd1d 14\uac1c\uc758 \ud1b5\uacc4\uac12\uc744 \uc77d\uae30 \uc704\ud55c \ud544\ub4dc \uc778\ub371\uc2a4\ub97c \uad6c\ud558\ub294 \ucf54\ub4dc\ub4e4\uc774\uace0 \uc2e4\uc81c \ud1b5\uacc4 \ub370\uc774\ud130\ub97c \uac00\uc838\uc624\ub294 \ucf54\ub4dc\ub294 38~51\ubc88 \ucf54\ub4dc\ub4e4\uc785\ub2c8\ub2e4. \uc774\ub807\uac8c \uad6c\ud55c \ud1b5\uacc4 \uac12\ub4e4\uc744 53\ubc88 \ucf54\ub4dc\ub97c \ud1b5\ud574 \uc9c0\uc815\ud558\uc5ec \ucc28\ud2b8\uc758 \uc544\uc774\ud15c\uc73c\ub85c\uc368 \ub3c4\ud615\uc758 \uc911\uc2ec\uc810 \uc88c\ud45c\uc640 \ud568\uaed8 \ucd94\uac00\ud574 \uc90d\ub2c8\ub2e4. \ucd5c\uc885\uc801\uc73c\ub85c \ucc28\ud2b8 \uc544\uc774\ud15c\ub4e4\uc774 \ucd94\uac00 \uc644\ub8cc\ub418\uba74 64\ubc88 \ucf54\ub4dc\ub97c \ud1b5\ud574 \uc0c8\ub86d\uac8c \uc7ac\uad6c\uc131\ud574 \uc918\uc57c \ud569\ub2c8\ub2e4. \uc774 \uc7ac\uad6c\uc131\uc774 \uc644\ub8cc\ub418\uba74 \ucc28\ud2b8\uac00 \ud654\uba74\uc0c1\uc5d0 \uc9e0~ \ud558\uace0 \ud45c\uc2dc\ub429\ub2c8\ub2e4. \uc774\uc81c \uc774 \ucc28\ud2b8 \ub808\uc774\uc5b4\uc5d0 \ub300\ud55c \ubc94\ub840 \uad6c\uc131\uc744 \uc704\ud55c \ubc94\ub840\ud45c\uc2dc \ubc84\ud2bc\uc5d0 \ub300\ud574 \uc774\ubca4\ud2b8 \ucf54\ub4dc\uc5d0 \ub300\ud574 \uc0b4\ud3b4\ubcf4\uaca0\uc2b5\ub2c8\ub2e4.<\/p>\n<pre>protected function onLegendClick(event:MouseEvent):void\r\n{\r\n    var legend:XrLegend = new XrLegend(\"legend\");\r\n    \r\n    var vbox:XrVAlignLegendItemGroup = new XrVAlignLegendItemGroup();\r\n    legend.content = vbox;\r\n    \r\n    var fontSym_title:XrFontSymbol = \r\n        new XrFontSymbol({fontName:\"HY\uacac\uace0\ub515\", fontSize:15});\r\n    var text_title:XrTextLegendItem = \r\n        new XrTextLegendItem(\"\ucc28\ud2b8 \ubc94\ub840\", fontSym_title);\r\n    text_title.centerAlign = true;\r\n    text_title.fillParentWidth = true;\r\n    vbox.addItem(text_title);\r\n    \r\n    var lineSym_bar:XrLineSymbol = \r\n        new XrLineSymbol({lineColor:0x000000, lineThickness:1});\r\n    var bar:XrBarLegendItem = new XrBarLegendItem(true, lineSym_bar);\r\n    vbox.addItem(bar);\r\n    \r\n    var fontSym_Content:XrFontSymbol = \r\n        new XrFontSymbol(\r\n            {fontName:\"\ub9d1\uc740 \uace0\ub515\", bold:true, fontSize:9, fontColor:0x000000}\r\n        );\r\n    var chartLyr:XrChartLayer = map.layers.getLayer(\"chart\") as XrChartLayer;\r\n    var chartLgd:XrPieChartLegendItem = \r\n        new XrPieChartLegendItem(chartLyr, 100, 100, fontSym_Content);\r\n    chartLgd.marginLeft = 75;\r\n    chartLgd.marginRight = 75;\r\n    chartLgd.marginTop = 20;\r\n    chartLgd.marginBottom = 20;\r\n    vbox.addItem(chartLgd);\r\n    \r\n    legend.position.horizontalAlignment=XrRelativePosition.HORIZONTAL_ALIGN_LEFT;\r\n    legend.position.verticalAlignment=XrRelativePosition.VERTICAL_ALIGN_BOTTOM;\r\n\r\n    map.legends.addLegend(legend);\r\n}  <\/pre>\n<p>\ucc28\ud2b8 \ub808\uc774\uc5b4\uc5d0 \ub300\ud55c \ubc94\ub840 \uad6c\uc131\uc740 \ub4c0\ub77c\ub9f5\uc758 \ub808\uc774\uc544\uc6c3 \uad6c\uc131 \uae30\ubc95\uc5d0 \uc720\uc0ac\ud569\ub2c8\ub2e4. \uc774\uc5d0 \ub300\ud55c \uc790\uc138\ud55c \ub0b4\uc6a9\uc740 <\/p>\n<p><a href=\"http:\/\/www.gisdeveloper.co.kr\/?p=1160\">DuraMap-Xr, \ud1b5\uacc4 \ub370\uc774\ud130\ub97c \uc774\uc6a9\ud55c \uc8fc\uc81c\ub3c4 \uc791\uc131<\/a>\uc744 \ucc38\uace0\ud558\uc2dc\uae30 \ubc14\ub78d\ub2c8\ub2e4. \ub2e4\ub978 \uc810\uc740 \ucc28\ud2b8 \ub808\uc774\uc5b4\uc5d0 \ub300\ud574 \ud2b9\ubcc4\ud558\uac8c \uc81c\uacf5\ub418\ub294 \ubc94\ub840 \uad6c\uc131 \ud56d\ubaa9\uc73c\ub85c\uc368 XrPieChartLegendItem\uc774 \uc788\uc73c\uba70 \uc774 \ud56d\ubaa9\uc744 \ucc28\ud2b8\ub808\uc774\uc5b4\uc640 \uc5f0\uacc4\ud558\uc5ec \uc27d\uac8c \ucc28\ud2b8 \ubc94\ub840\ub97c \uad6c\uc131\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4.<\/p>\n<p>\uc774\uc0c1\uc73c\ub85c Xr \uc194\ub8e8\uc158 \uc911 RIA \uae30\ubc18\uc758&nbsp; GIS \uc194\ub8e8\uc158\uc744 \ub2f4\ub2f9\ud558\ub294 \ud551\uac70\uc544\uc774\uc988\uc5d0 \ub300\ud55c \uae30\ubcf8\uc801\uc778 API \uc0ac\uc6a9\ubc95\uc5d0 \ub300\ud55c \ud3ec\uc2a4\ud305\uc744 \ub9c8\ubb34\ub9ac \ud558\ub3c4\ub85d \ud558\uaca0\uc2b5\ub2c8\ub2e4. <\/p>\n","protected":false},"excerpt":{"rendered":"<p>\ud551\uac70\uc544\uc774\uc988\uc5d0 \ub300\ud55c \ub9c8\uc9c0\ub9c9 API \uc0ac\uc6a9 \uc2e4\uc2b5 \ud29c\ud1a0\ub9ac\uc5bc\ub85c\uc368 \uacf5\uac04\uc0c1\uc5d0 \uc758\ubbf8\uc788\uac8c \ubd84\ud3ec\ub418\uc5b4 \uc788\ub294 \uc218\uce58\ub370\uc774\ud130\ub97c \ucc28\ud2b8\ub85c \ud45c\ud604\ud558\ub294 \uae30\ub2a5\uc5d0 \ub300\ud574 \uc0b4\ud3b4\ubcf4\uaca0\uc2b5\ub2c8\ub2e4. \uc774 \uae00\uc5d0 \ub300\ud55c \ucd5c\uc885 \uacb0\uacfc\uc5d0 \ub300\ud55c \uc2e4\ud589\uc740 \uc544\ub798\uc640 \uac19\uc2b5\ub2c8\ub2e4. \uac01 \uc9d1\uacc4\uad6c\uc5d0 \ub098\uc774\ub300\ubcc4 \uc778\uad6c\uc218\ub97c \ud30c\uc774\ucc28\ud2b8\ub85c \ud45c\ud604\ud558\ub294 \uc608\uc785\ub2c8\ub2e4. \uc2e4\ud589 \uacb0\uacfc \ubcf4\uae30 \ubc0f \uc18c\uc2a4\ucf54\ub4dc \ub2e4\uc6b4\ub85c\ub4dc \uc704\uc758 \uc2e4\ud589 \uacb0\uacfc\ub97c \uc0b4\ud3b4\ubcf4\uba74 \uc5b4\ud50c\ub9ac\ucf00\uc774\uc158\uc5d0 \ub300\ud55c UI\ub294 \ucd1d 3\uac1c\uc785\ub2c8\ub2e4. \ucc28\ud2b8\ud45c\uc2dc\ub77c\ub294 \ubc84\ud2bc, \ubc94\ub840\ud45c\uc2dc\ub77c\ub294 \ubc84\ud2bc \uadf8\ub9ac\uace0 \ub9f5 \ucef4\ud3ec\ub10c\ud2b8\uc785\ub2c8\ub2e4. &hellip; <\/p>\n<p class=\"link-more\"><a href=\"http:\/\/www.gisdeveloper.co.kr\/?p=1407\" class=\"more-link\">\ub354 \ubcf4\uae30<span class=\"screen-reader-text\"> &#8220;[GIS] FingerEyes, \ucc28\ud2b8 \ud45c\uc2dc\ud558\uae30(\ucc28\ud2b8 \ub808\uc774\uc5b4 \ucd94\uac00)&#8221;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[70],"tags":[69,5,53],"class_list":["post-1407","post","type-post","status-publish","format-standard","hentry","category-fingereyes-xr","tag-fingereyes","tag-gis","tag-xr"],"_links":{"self":[{"href":"http:\/\/www.gisdeveloper.co.kr\/index.php?rest_route=\/wp\/v2\/posts\/1407","targetHints":{"allow":["GET"]}}],"collection":[{"href":"http:\/\/www.gisdeveloper.co.kr\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/www.gisdeveloper.co.kr\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/www.gisdeveloper.co.kr\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/www.gisdeveloper.co.kr\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=1407"}],"version-history":[{"count":2,"href":"http:\/\/www.gisdeveloper.co.kr\/index.php?rest_route=\/wp\/v2\/posts\/1407\/revisions"}],"predecessor-version":[{"id":4510,"href":"http:\/\/www.gisdeveloper.co.kr\/index.php?rest_route=\/wp\/v2\/posts\/1407\/revisions\/4510"}],"wp:attachment":[{"href":"http:\/\/www.gisdeveloper.co.kr\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=1407"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/www.gisdeveloper.co.kr\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=1407"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/www.gisdeveloper.co.kr\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=1407"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}