{"id":4823,"date":"2017-05-15T15:18:50","date_gmt":"2017-05-15T06:18:50","guid":{"rendered":"http:\/\/www.gisdeveloper.co.kr\/?p=4823"},"modified":"2020-05-28T14:26:28","modified_gmt":"2020-05-28T05:26:28","slug":"duramap-xr%ec%97%90%ec%84%9c-%eb%a7%88%ec%9a%b0%ec%8a%a4-wheel%eb%a1%9c-%ec%a7%80%eb%8f%84-%ed%99%95%eb%8c%80-%ec%b6%95%ec%86%8c%ed%95%98%ea%b8%b0","status":"publish","type":"post","link":"http:\/\/www.gisdeveloper.co.kr\/?p=4823","title":{"rendered":"DuraMap-Xr\uc5d0\uc11c \ub9c8\uc6b0\uc2a4 Wheel\ub85c \uc9c0\ub3c4 \ud655\ub300, \ucd95\uc18c\ud558\uae30"},"content":{"rendered":"<p>DuraMap-Xr\uc758 Mouse Wheel \uc774\ubca4\ud2b8\ub97c \uc774\uc6a9\ud574 \uc9c0\ub3c4\ub97c \ud655\ub300 \ucd95\uc18c\ud558\ub294 \uc774\ubca4\ud2b8\uc5d0 \ub300\ud55c \uae00\uc744 \uc815\ub9ac\ud569\ub2c8\ub2e4. \ubc30\uacbd\uc9c0\ub3c4\ub294 TMS \ud615\uc2dd\uc73c\ub85c \ud65c\uc6a9\ud560 \uc218 \uc788\ub294 VWorld\ub97c \uc774\uc6a9\ud569\ub2c8\ub2e4. \uba3c\uc800 VWorld\uc758 \ubc30\uacbd\uc9c0\ub3c4\uc5d0 \ub300\ud55c Layer\ub294 \uc544\ub798\ucc98\ub7fc \ucd94\uac00\ud560 \uc218 \uc788\ub294\ub370\uc694. \uc800\ub294 \uc544\ub798\uc758 \ucf54\ub4dc\ub97c \ud3fc(Form)\uc774 Shown \uc774\ubca4\ud2b8\uc5d0 \ucd94\uac00\ud558\uc600\uc2b5\ub2c8\ub2e4.<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"csharp\">\r\nXrMapLib.ValueList URLs = new XrMapLib.ValueList();\r\nURLs.AddValueByString(VWORLD_TMS_URL);\r\n\r\nXrMapLib.Extent MaxMBR = new XrMapLib.Extent();\r\nMaxMBR.MinX = -20037508.342789244;\r\nMaxMBR.MinY = -20037508.342789244;\r\nMaxMBR.MaxX = 20037508.342789244;\r\nMaxMBR.MaxY = 20037508.342789244;\r\n\r\ndouble[] upps = {\r\n    78000, 39000, 19600, 9800, 4900, 2400, \/\/Dummy\r\n    1222.9924523925781, 611.4962261962891, 305.74811309814453,\r\n    152.87405654907226, 76.43702827453613, 38.218514137268066,\r\n    19.109257068634033, 9.554628534317017, 4.777314267158508,\r\n    2.388657133579254, 1.194328566789627, 0.5971642833948135, 0.5971642833948135\/2 };\r\n\r\nXrMapLib.ValueList UPPs = new XrMapLib.ValueList();\r\n\r\nScales.Clear();\r\n\r\nfor (int iUPP = 0; iUPP < upps.Length; ++iUPP)\r\n{\r\n    double UPP = upps[iUPP];\r\n    double MapScale = axXr1.GetMapScaleFromUPP(UPP);\r\n\r\n    UPPs.AddValueByFloat(UPP, 14);\r\n\r\n    if (iUPP > 5) \/\/ upps \ubc30\uc5f4\uc5d0\uc11c 0~4\ubc88\uc9f8\ub294 \ud55c\uad6d\uc5d0\uc11c\ub294 \uc0ac\uc6a9\ub418\uc9c0 \uc54a\uc74c\r\n    {\r\n        Scales.Add(MapScale);\r\n    }\r\n}\r\n\r\naxXr1.Layers.AddTMSLayer(\"basemap\", URLs, MaxMBR, UPPs, true);\r\naxXr1.WaitForAllConnections();\r\n\r\nXrMapLib.Coord MapPt = new XrMapLib.Coord();\r\nMapPt.X = 14145315;\r\nMapPt.Y = 4514689;\r\n            \r\naxXr1.MapCenter = MapPt;\r\naxXr1.MapScale = Scales[0];\r\naxXr1.Update();\r\n\r\naxXr1.MouseMode = XrMapLib.XrMapViewModeEnum.XrPanMode;\r\n<\/pre>\n<p>\ucc38\uace0\ub85c \ub4c0\ub77c\ub9f5 \uc9c0\ub3c4 \ubdf0\uc5b4 \ucee8\ud2b8\ub864\uc758 \ubcc0\uc218\ub294 axXr1\uc785\ub2c8\ub2e4. \uc704\uc758 \ucf54\ub4dc\ub97c \ubcf4\uba74 Scales\ub77c\ub294 \uc804\uc5ed \ubcc0\uc218\uac00 \ubcf4\uc785\ub2c8\ub2e4. \uc774 Scales\ub294 \ub2e4\uc74c\ucc98\ub7fc \uc815\uc758\ub418\uc5b4 \uc788\uc2b5\ub2c8\ub2e4. Scales \ucee8\ud130\uc774\ub108 \ubcc0\uc218\ub294 \uac01 \uc9c0\ub3c4 \uc90c \ub2e8\uacc4\uc5d0 \ub300\ud55c \ucd95\ucc99\uac12\uc744 \ub2f4\uace0 \uc788\uc2b5\ub2c8\ub2e4.<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"csharp\">\r\nprivate List&lt;double> Scales = new List&lt;double>();\r\n<\/pre>\n<p>\uc774\uc81c \uc9c0\ub3c4 \ucee8\ud2b8\ub864\uc758 \ub9c8\uc6b0\uc2a4 \ud720 \uc774\ubca4\ud2b8\ub97c \ub4f1\ub85d\ud569\ub2c8\ub2e4. \uc544\ub798\uc758 \ucf54\ub4dc\ub294 \ub4c0\ub77c\ub9f5 \uc9c0\ub3c4 \ubdf0 \ucee8\ud2b8\ub864\uc758 \ud720 \uc774\ubca4\ud2b8\uc5d0 \ud560\ub2f9\ub41c \uc774\ubca4\ud2b8 \ud568\uc218\uc785\ub2c8\ub2e4.<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"csharp\">\r\nprivate void axXr1_OnMouseWheel(object sender, AxXrMapLib._IXrMapControlEvents_OnMouseWheelEvent e)\r\n{\r\n    double NewMapScale = axXr1.MapScale;\r\n\r\n    \/\/ \ud604\uc7ac \uc9c0\ub3c4 \ucd95\ucc99\uac12 \uc911 \uac00\uc7a5 \uac00\uae4c\uc6b4 \uc90c \ub808\ubca8 \uc5bb\uae30\r\n    int cntLevels = Scales.Count;\r\n    double Gap = Double.MaxValue;\r\n    int CurrentLevel = -1;\r\n    for (int i = 0; i < cntLevels; i++)\r\n    {\r\n        double ThatGap = Math.Abs(NewMapScale - Scales[i]);\r\n        if (Gap > ThatGap)\r\n        {\r\n            Gap = ThatGap;\r\n            CurrentLevel = i;\r\n        }\r\n    }\r\n\r\n    if(e.delta == 120) \/\/ Wheel Up\r\n    {\r\n        int idx = CurrentLevel + 1;\r\n        if (idx >= Scales.Count) idx = Scales.Count - 1;\r\n        axXr1.MapScale = Scales[idx];\r\n    }\r\n    else  \/\/ Wheel Down\r\n    {\r\n        int idx = CurrentLevel - 1;\r\n        if (idx < 0) idx = 0;\r\n        axXr1.MapScale = Scales[idx];\r\n    }\r\n\r\n    axXr1.Update();\r\n}\r\n<\/pre>\n","protected":false},"excerpt":{"rendered":"<p>DuraMap-Xr\uc758 Mouse Wheel \uc774\ubca4\ud2b8\ub97c \uc774\uc6a9\ud574 \uc9c0\ub3c4\ub97c \ud655\ub300 \ucd95\uc18c\ud558\ub294 \uc774\ubca4\ud2b8\uc5d0 \ub300\ud55c \uae00\uc744 \uc815\ub9ac\ud569\ub2c8\ub2e4. \ubc30\uacbd\uc9c0\ub3c4\ub294 TMS \ud615\uc2dd\uc73c\ub85c \ud65c\uc6a9\ud560 \uc218 \uc788\ub294 VWorld\ub97c \uc774\uc6a9\ud569\ub2c8\ub2e4. \uba3c\uc800 VWorld\uc758 \ubc30\uacbd\uc9c0\ub3c4\uc5d0 \ub300\ud55c Layer\ub294 \uc544\ub798\ucc98\ub7fc \ucd94\uac00\ud560 \uc218 \uc788\ub294\ub370\uc694. \uc800\ub294 \uc544\ub798\uc758 \ucf54\ub4dc\ub97c \ud3fc(Form)\uc774 Shown \uc774\ubca4\ud2b8\uc5d0 \ucd94\uac00\ud558\uc600\uc2b5\ub2c8\ub2e4. XrMapLib.ValueList URLs = new XrMapLib.ValueList(); URLs.AddValueByString(VWORLD_TMS_URL); XrMapLib.Extent MaxMBR = new XrMapLib.Extent(); MaxMBR.MinX = -20037508.342789244; MaxMBR.MinY = -20037508.342789244; MaxMBR.MaxX = &hellip; <\/p>\n<p class=\"link-more\"><a href=\"http:\/\/www.gisdeveloper.co.kr\/?p=4823\" class=\"more-link\">\ub354 \ubcf4\uae30<span class=\"screen-reader-text\"> &#8220;DuraMap-Xr\uc5d0\uc11c \ub9c8\uc6b0\uc2a4 Wheel\ub85c \uc9c0\ub3c4 \ud655\ub300, \ucd95\uc18c\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":[57],"tags":[],"class_list":["post-4823","post","type-post","status-publish","format-standard","hentry","category-duramap-xr"],"_links":{"self":[{"href":"http:\/\/www.gisdeveloper.co.kr\/index.php?rest_route=\/wp\/v2\/posts\/4823","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=4823"}],"version-history":[{"count":4,"href":"http:\/\/www.gisdeveloper.co.kr\/index.php?rest_route=\/wp\/v2\/posts\/4823\/revisions"}],"predecessor-version":[{"id":9668,"href":"http:\/\/www.gisdeveloper.co.kr\/index.php?rest_route=\/wp\/v2\/posts\/4823\/revisions\/9668"}],"wp:attachment":[{"href":"http:\/\/www.gisdeveloper.co.kr\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=4823"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/www.gisdeveloper.co.kr\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=4823"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/www.gisdeveloper.co.kr\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=4823"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}