{"id":9004,"date":"2020-03-09T06:47:19","date_gmt":"2020-03-08T21:47:19","guid":{"rendered":"http:\/\/www.gisdeveloper.co.kr\/?p=9004"},"modified":"2020-05-28T09:39:13","modified_gmt":"2020-05-28T00:39:13","slug":"%ec%9b%b9%ec%97%90%ec%84%9c-shp-%ed%8c%8c%ec%9d%bc-%ec%83%9d%ec%84%b1%ed%95%98%ea%b8%b0","status":"publish","type":"post","link":"http:\/\/www.gisdeveloper.co.kr\/?p=9004","title":{"rendered":"\uc6f9\uc5d0\uc11c SHP \ud30c\uc77c \uc0dd\uc131\ud558\uae30"},"content":{"rendered":"<p>SHP \ud30c\uc77c\uc740 \ucd5c\uc18c 3\uac00\uc9c0 \ud30c\uc77c\ub85c \uad6c\uc131\ub429\ub2c8\ub2e4. \uc88c\ud45c \ub370\uc774\ud130\uac00 \uc800\uc7a5\ub41c .SHP, \uc774 \uc88c\ud45c \ub370\uc774\ud130\ub85c \uad6c\uc131\ub41c \ub3c4\ud615\uc5d0 \ub300\ud55c \uc778\ub371\uc2a4\uac00 \uc800\uc7a5\ub41c .SHX, \uc18d\uc131 \ub370\uc774\ud130\uac00 \uc800\uc7a5\ub41c .DBF \ud30c\uc77c\uc785\ub2c8\ub2e4.<\/p>\n<p>\uc6f9 GIS\uc5d0\uc11c \uc0ac\uc6a9\uc790\uac00 \uacf5\uac04 \ub370\uc774\ud130\ub97c \ud65c\uc6a9\ud558\uc5ec \ub610 \ub2e4\ub978 \uc758\ubbf8\uc758 \uacf5\uac04 \ub370\uc774\ud130\ub97c \uc0dd\uc131\ud574 \ub0bc \uc218 \uc788\uc744 \uac83\uc774\uace0, \uc774 \uc0c8\ub85c\uc6b4 \uacf5\uac04 \ub370\uc774\ud130\ub97c SHSP \ud30c\uc77c \ud615\ud0dc\ub85c \uc800\uc7a5\ud560 \uc218 \uc788\ub2e4\uba74 \uc790\uc2e0\uc758 PC\uc5d0 \ubcf4\uad00\ud558\uac70\ub098, \ub2e4\ub978 \uc0ac\uc6a9\uc790\uc640 \ud30c\uc77c \uc218\uc900\uc5d0\uc11c \uacf5\uc720\ud560 \uc218 \uc788\uc744 \uac83\uc785\ub2c8\ub2e4.<\/p>\n<p>FingerEyes-Xr\uc740 NexGen \uc194\ub8e8\uc158 \uac1c\ubc1c\uc5d0 \uc0ac\uc6a9\ub41c \uc6f9 GIS \ud074\ub77c\uc774\uc5b8\ud2b8 \ub77c\uc774\ube0c\ub7ec\ub9ac\uc785\ub2c8\ub2e4. \uc774 FingerEyes-Xr\uc5d0\ub294 SHP \ud30c\uc77c\uc744 \uc0dd\uc131\ud560 \uc218 \uc788\ub294 \uae30\ub2a5\uc744 \uc81c\uacf5\ud558\ub294\ub370, \uc774\uc5d0 \ub300\ud55c API\ub97c \uc815\ub9ac\ud574 \ub461\ub2c8\ub2e4.<\/p>\n<p>\uba3c\uc800 \uc0dd\uc131\ud558\uace0\uc790 \ud558\ub294 \ub3c4\ud615\uc758 \uc885\ub958\uac00 \ud3ec\uc778\ud2b8\uc778\uc9c0, \ud3f4\ub9ac\ub77c\uc778\uc778\uc9c0, \ud3f4\ub9ac\uace4\uc778\uc9c0\ub97c \uc9c0\uc815\ud558\ub294 \ucf54\ub4dc\uac00 \ud544\uc694\ud569\ub2c8\ub2e4. \uc5ec\uae30\uc11c\ub294 \ud3f4\ub9ac\uace4\uc785\ub2c8\ub2e4.<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"js\">\r\nlet shapeType = Xr.data.ShapeType.POLYGON;\r\n<\/pre>\n<\/p>\n<p>\uc18d\uc131 \ub370\uc774\ud130\uc758 \uad6c\uc870\ub97c \uc815\uc758\ud558\uae30 \uc704\ud574 \uc544\ub798\uc758 \ucf54\ub4dc\uac00 \ud544\uc694\ud569\ub2c8\ub2e4.<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"js\">\r\nlet fieldSet = new Xr.data.FieldSet();\r\n\r\nfieldSet.add(new Xr.data.Field('field1', Xr.data.FieldType.STRING, 20));\r\nfieldSet.add(new Xr.data.Field('field2', Xr.data.FieldType.INTEGER, 7));\r\nfieldSet.add(new Xr.data.Field('field3', Xr.data.FieldType.FLOAT, 6, 2));\r\n<\/pre>\n<p>\ucd1d 3\uac1c\uc758 \ud544\ub4dc\ub97c \uc815\uc758\ud588\uc73c\uba70 \uac01\uac01 \ubb38\uc790\uc5f4, \uc815\uc218\ud615, \uc2e4\uc218\ud615\uc785\ub2c8\ub2e4. \ubb38\uc790\uc5f4\uc758 \ucd5c\ub300 \uae38\uc774\ub294 20\uc774\uba70, \uc815\uc218\ud615\uc758 \ucd5c\ub300 \uae38\uc774\ub294 7\uc774\uace0, \uc2e4\uc218\ud615\uc758 \ucd5c\ub300 \uae38\uc774\ub294 6\uc774\uba74\uc11c \uc18c\uc218\uc810 \ucd5c\ub300 \uae38\uc774\ub294 2\uc785\ub2c8\ub2e4.<\/p>\n<p>\uc774\uc81c SHP \uc0dd\uc131\uc744 \uc704\ud55c \ud329\ud1a0\ub9ac\ub97c \uc815\uc758\ud569\ub2c8\ub2e4. \uc55e\uc11c \uc815\uc758\ub450\uc5c8\ub358 \ub3c4\ud615\uc758 \uc885\ub958\uc640 \uc18d\uc131\uc758 \uad6c\uc870\ub97c \uc9c0\uc815\ud569\ub2c8\ub2e4.<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"js\">\r\nlet cntFields = fieldSet.count();\r\nlet factory = new Xr.export.ESRISHPFileFactory(fieldSet, shapeType);\r\n<\/pre>\n<p>\n\uc774\uc81c \ud30c\uc77c\uc5d0 \uc800\uc7a5\ud560 \ub3c4\ud615 \uc88c\ud45c\uc640 \uc18d\uc131\uc744 \uc0dd\uc131\ud558\uace0 \ud329\ud1a0\ub9ac\uc5d0 \ucd94\uac00\ud569\ub2c8\ub2e4. \ucd1d 2\uac1c\ub97c \ucd94\uac00\ud569\ub2c8\ub2e4.\n<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"js\">\r\nlet shape, attr;\r\n\r\nshape = new Xr.data.PolygonShapeData([\r\n    [\r\n        new Xr.PointD(150267, 246895), new Xr.PointD(150367, 246895), new Xr.PointD(150367, 246995)\r\n    ],\r\n    [\r\n        new Xr.PointD(150467, 247095), new Xr.PointD(150367, 247095), new Xr.PointD(150367, 247195)\r\n    ]\r\n]);\r\n\r\nattr = new Xr.data.AttributeRow(-1, cntFields); \/\/ -1\uc740 \uc758\ubbf8\uc5c6\uc74c\r\nattr.setValue(0, 'A\uac00\ub098\ub2e4B');\r\nattr.setValue(1, 100);\r\nattr.setValue(2, 100.12);\r\nlet row1 = new Xr.export.RowSHP(shape, attr);\r\n\r\nshape = new Xr.data.PolygonShapeData([\r\n    [\r\n        new Xr.PointD(150422, 246805), new Xr.PointD(150522, 246805), new Xr.PointD(150522, 246705)\r\n    ]\r\n]);\r\n\r\nattr = new Xr.data.AttributeRow(-1, cntFields); \/\/ -1\uc740 \uc758\ubbf8\uc5c6\uc74c\r\nattr.setValue(0, 'Hello');\r\nattr.setValue(1, 200);\r\nattr.setValue(2, 200.12);\r\nlet row2 = new Xr.export.RowSHP(shape, attr);\r\n\r\nfactory.addRow(row1);\r\nfactory.addRow(row2);\r\n<\/pre>\n<p>\ucd5c\uc885\uc801\uc73c\ub85c SHP \ud30c\uc77c\uc5d0 \uc800\uc7a5\ub420 \ubc14\uc774\ub108\ub9ac \ub370\uc774\ud130\ub294 \ub2e4\uc74c \ucf54\ub4dc\ub97c \ud1b5\ud574 \uc5bb\uc744 \uc218 \uc788\uc2b5\ub2c8\ub2e4.<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"js\">\r\nlet shpObj = factory.export();\r\n<\/pre>\n<p>\uc704\uc758 shpObj \uac1d\uccb4\uc5d0\ub294 shp, shx, dbf\ub77c\ub294 \uc18d\uc131\uc774 \uc874\uc7ac\ud558\uba70 \uac01\uac01 \uc55e\uc11c \uc5b8\uae09\ud55c .SHP, .SHX, .DBF \ud30c\uc77c\uc744 \uad6c\uc131\ud558\ub294 \ubc14\uc774\ub108\ub9ac \ub370\uc774\ud130\uac00 ArrayBuffer\uc758 \ubc30\uc5f4\ub85c \ub2f4\uaca8 \uc788\uc2b5\ub2c8\ub2e4. \uc2e4\uc81c \ud30c\uc77c\ub85c\uc758 \uc800\uc7a5\uc740 \uc544\ub798\uc758 \ucf54\ub4dc\ub97c \ud1b5\ud574 \uac00\ub2a5\ud569\ub2c8\ub2e4. \uc18d\uc131 \ub370\uc774\ud130\uc5d0 \ub300\ud55c \ubb38\uc790 \uc778\ucf54\ub529\uc740 UTF-8\uc785\ub2c8\ub2e4.<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"js\">\r\nif (isIE()) {\r\n    saveToFile_IE('a.shp', shpObj.shp);\r\n    saveToFile_IE('a.shx', shpObj.shx);\r\n    saveToFile_IE('a.dbf', shpObj.dbf);\r\n} else {\r\n    saveToFile_Chrome('a.shp', shpObj.shp);\r\n    saveToFile_Chrome('a.shx', shpObj.shx);\r\n    saveToFile_Chrome('a.dbf', shpObj.dbf);\r\n}\r\n<\/pre>\n<p>\uc704\uc758 \ucf54\ub4dc\uc5d0\uc11c \uc5b8\uae09\ub41c isIE, saveToFile_IE, saveToFile_Chrome \ud568\uc218\ub294 \ub2e4\uc74c \uae00\uc744 \ud1b5\ud574 \uc0c1\uc138\ud788 \ud30c\uc545\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4. \ucc38\uace0\ub85c \ucf54\ub4dc \uc911 \uae30\uc874\uc758 type: &#8216;text\/plain&#8217;\uc744 type: &#8216;application\/zip&#8217;\uc73c\ub85c \ubcc0\uacbd\ud588\uc2b5\ub2c8\ub2e4.<\/p>\n<blockquote class=\"wp-embedded-content\" data-secret=\"Wxr5fpsfYs\"><p><a href=\"http:\/\/www.gisdeveloper.co.kr\/?p=5564\">\uc6f9\uc5d0\uc11c Javascript \ub9cc\uc73c\ub85c \ud14d\uc2a4\ud2b8 \ud30c\uc77c \uc0dd\uc131<\/a><\/p><\/blockquote>\n<p><iframe loading=\"lazy\" class=\"wp-embedded-content\" sandbox=\"allow-scripts\" security=\"restricted\" style=\"position: absolute; clip: rect(1px, 1px, 1px, 1px);\" title=\"&#8220;\uc6f9\uc5d0\uc11c Javascript \ub9cc\uc73c\ub85c \ud14d\uc2a4\ud2b8 \ud30c\uc77c \uc0dd\uc131&#8221; &#8212; GIS Developer\" src=\"http:\/\/www.gisdeveloper.co.kr\/?p=5564&#038;embed=true#?secret=fRKLNw426x#?secret=Wxr5fpsfYs\" data-secret=\"Wxr5fpsfYs\" width=\"525\" height=\"296\" frameborder=\"0\" marginwidth=\"0\" marginheight=\"0\" scrolling=\"no\"><\/iframe><\/p>\n","protected":false},"excerpt":{"rendered":"<p>SHP \ud30c\uc77c\uc740 \ucd5c\uc18c 3\uac00\uc9c0 \ud30c\uc77c\ub85c \uad6c\uc131\ub429\ub2c8\ub2e4. \uc88c\ud45c \ub370\uc774\ud130\uac00 \uc800\uc7a5\ub41c .SHP, \uc774 \uc88c\ud45c \ub370\uc774\ud130\ub85c \uad6c\uc131\ub41c \ub3c4\ud615\uc5d0 \ub300\ud55c \uc778\ub371\uc2a4\uac00 \uc800\uc7a5\ub41c .SHX, \uc18d\uc131 \ub370\uc774\ud130\uac00 \uc800\uc7a5\ub41c .DBF \ud30c\uc77c\uc785\ub2c8\ub2e4. \uc6f9 GIS\uc5d0\uc11c \uc0ac\uc6a9\uc790\uac00 \uacf5\uac04 \ub370\uc774\ud130\ub97c \ud65c\uc6a9\ud558\uc5ec \ub610 \ub2e4\ub978 \uc758\ubbf8\uc758 \uacf5\uac04 \ub370\uc774\ud130\ub97c \uc0dd\uc131\ud574 \ub0bc \uc218 \uc788\uc744 \uac83\uc774\uace0, \uc774 \uc0c8\ub85c\uc6b4 \uacf5\uac04 \ub370\uc774\ud130\ub97c SHSP \ud30c\uc77c \ud615\ud0dc\ub85c \uc800\uc7a5\ud560 \uc218 \uc788\ub2e4\uba74 \uc790\uc2e0\uc758 PC\uc5d0 \ubcf4\uad00\ud558\uac70\ub098, \ub2e4\ub978 \uc0ac\uc6a9\uc790\uc640 &hellip; <\/p>\n<p class=\"link-more\"><a href=\"http:\/\/www.gisdeveloper.co.kr\/?p=9004\" class=\"more-link\">\ub354 \ubcf4\uae30<span class=\"screen-reader-text\"> &#8220;\uc6f9\uc5d0\uc11c SHP \ud30c\uc77c \uc0dd\uc131\ud558\uae30&#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,7],"tags":[],"class_list":["post-9004","post","type-post","status-publish","format-standard","hentry","category-fingereyes-xr","category-gis-working-history"],"_links":{"self":[{"href":"http:\/\/www.gisdeveloper.co.kr\/index.php?rest_route=\/wp\/v2\/posts\/9004","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=9004"}],"version-history":[{"count":9,"href":"http:\/\/www.gisdeveloper.co.kr\/index.php?rest_route=\/wp\/v2\/posts\/9004\/revisions"}],"predecessor-version":[{"id":9330,"href":"http:\/\/www.gisdeveloper.co.kr\/index.php?rest_route=\/wp\/v2\/posts\/9004\/revisions\/9330"}],"wp:attachment":[{"href":"http:\/\/www.gisdeveloper.co.kr\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=9004"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/www.gisdeveloper.co.kr\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=9004"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/www.gisdeveloper.co.kr\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=9004"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}