久久久久久久av_日韩在线中文_看一级毛片视频_日本精品二区_成人深夜福利视频_武道仙尊动漫在线观看

      1. <tfoot id='pwNG3'></tfoot>
        <legend id='pwNG3'><style id='pwNG3'><dir id='pwNG3'><q id='pwNG3'></q></dir></style></legend>
        <i id='pwNG3'><tr id='pwNG3'><dt id='pwNG3'><q id='pwNG3'><span id='pwNG3'><b id='pwNG3'><form id='pwNG3'><ins id='pwNG3'></ins><ul id='pwNG3'></ul><sub id='pwNG3'></sub></form><legend id='pwNG3'></legend><bdo id='pwNG3'><pre id='pwNG3'><center id='pwNG3'></center></pre></bdo></b><th id='pwNG3'></th></span></q></dt></tr></i><div class="qwawimqqmiuu" id='pwNG3'><tfoot id='pwNG3'></tfoot><dl id='pwNG3'><fieldset id='pwNG3'></fieldset></dl></div>
        • <bdo id='pwNG3'></bdo><ul id='pwNG3'></ul>

        <small id='pwNG3'></small><noframes id='pwNG3'>

        谷歌地圖兩個圓的交點

        Google Maps Two Circles Intersection Points(谷歌地圖兩個圓的交點)
        <legend id='c2LjS'><style id='c2LjS'><dir id='c2LjS'><q id='c2LjS'></q></dir></style></legend>

        <small id='c2LjS'></small><noframes id='c2LjS'>

          <tbody id='c2LjS'></tbody>

            <bdo id='c2LjS'></bdo><ul id='c2LjS'></ul>

                <i id='c2LjS'><tr id='c2LjS'><dt id='c2LjS'><q id='c2LjS'><span id='c2LjS'><b id='c2LjS'><form id='c2LjS'><ins id='c2LjS'></ins><ul id='c2LjS'></ul><sub id='c2LjS'></sub></form><legend id='c2LjS'></legend><bdo id='c2LjS'><pre id='c2LjS'><center id='c2LjS'></center></pre></bdo></b><th id='c2LjS'></th></span></q></dt></tr></i><div class="qwawimqqmiuu" id='c2LjS'><tfoot id='c2LjS'></tfoot><dl id='c2LjS'><fieldset id='c2LjS'></fieldset></dl></div>
              • <tfoot id='c2LjS'></tfoot>

                • 本文介紹了谷歌地圖兩個圓的交點的處理方法,對大家解決問題具有一定的參考價值,需要的朋友們下面隨著小編來一起學習吧!

                  問題描述

                  有沒有一種簡單的方法來獲取兩個

                  var R = 6371;//公里var dLat = (lat2-lat1).toRad();var dLon = (lon2-lon1).toRad();var lat1 = lat1.toRad();var lat2 = lat2.toRad();var a = Math.sin(dLat/2) * Math.sin(dLat/2) +Math.sin(dLon/2) * Math.sin(dLon/2) * Math.cos(lat1) * Math.cos(lat2);var c = 2 * Math.atan2(Math.sqrt(a), Math.sqrt(1-a));

                  和我們的

                  AC = c/2

                  如果給定的圓半徑Rd是公里,那么

                  AB = Rd/R = Rd/6371

                  現在我們可以找到角度了

                  A = arccos(tg(AC) * ctg(AB))

                  起始方位(AF方向):

                  var y = Math.sin(dLon) * Math.cos(lat2);var x = Math.cos(lat1)*Math.sin(lat2) -Math.sin(lat1)*Math.cos(lat2)*Math.cos(dLon);var brng = Math.atan2(y, x);

                  交叉點的方位:

                  B_bearing = brng - AD_軸承 = brng + A

                  交點坐標:

                  var latB = Math.asin( Math.sin(lat1)*Math.cos(Rd/R) +Math.cos(lat1)*Math.sin(Rd/R)*Math.cos(B_bearing));var lonB = lon1.toRad() + Math.atan2(Math.sin(B_bearing)*Math.sin(Rd/R)*Math.cos(lat1),Math.cos(Rd/R)-Math.sin(lat1)*Math.sin(lat2));

                  同樣適用于 D_bearing

                  latB, lonB 以弧度為單位

                  Is there an easy way to get the lat/lng of the intersection points (if available) of two circles in Google Maps API V3? Or should I go with the hard way?

                  EDIT : In my problem, circles always have the same radius, in case that makes the solution easier.

                  解決方案

                  Yes, for equal circles rather simple solution could be elaborated:
                  Let's first circle center is A point, second circle center is F, midpoint is C, and intersection points are B,D. ABC is right-angle spherical triangle with right angle C.

                  We want to find angle A - this is deviation angle from A-F direction. Spherical trigonometry (Napier's rules for right spherical triangles) gives us formula:

                  cos(A)= tg(AC) * ctg(AB) where one symbol denote spherical angle, double symbols denote great circle arcs' angles (AB, AC). We can see that AB = circle radius (in radians, of course), AC = half-distance between A and F on the great circle arc. To find AC (and other values) - I'll use code from this excellent page

                  var R = 6371; // km
                  var dLat = (lat2-lat1).toRad();
                  var dLon = (lon2-lon1).toRad();
                  var lat1 = lat1.toRad();
                  var lat2 = lat2.toRad();
                  
                  var a = Math.sin(dLat/2) * Math.sin(dLat/2) +
                          Math.sin(dLon/2) * Math.sin(dLon/2) * Math.cos(lat1) * Math.cos(lat2); 
                  var c = 2 * Math.atan2(Math.sqrt(a), Math.sqrt(1-a)); 
                  

                  and our

                  AC = c/2
                  

                  If circle radius Rd is given is kilometers, then

                  AB = Rd / R = Rd / 6371
                  

                  Now we can find angle

                  A = arccos(tg(AC) * ctg(AB))
                  

                  Starting bearing (AF direction):

                  var y = Math.sin(dLon) * Math.cos(lat2);
                  var x = Math.cos(lat1)*Math.sin(lat2) -
                          Math.sin(lat1)*Math.cos(lat2)*Math.cos(dLon);
                  var brng = Math.atan2(y, x);
                  

                  Intersection points' bearings:

                  B_bearing = brng - A
                  D_bearing = brng + A
                  

                  Intersection points' coordinates:

                  var latB = Math.asin( Math.sin(lat1)*Math.cos(Rd/R) + 
                                Math.cos(lat1)*Math.sin(Rd/R)*Math.cos(B_bearing) );
                  var lonB = lon1.toRad() + Math.atan2(Math.sin(B_bearing)*Math.sin(Rd/R)*Math.cos(lat1), 
                                       Math.cos(Rd/R)-Math.sin(lat1)*Math.sin(lat2));
                  

                  and the same for D_bearing

                  latB, lonB are in radians

                  這篇關于谷歌地圖兩個圓的交點的文章就介紹到這了,希望我們推薦的答案對大家有所幫助,也希望大家多多支持html5模板網!

                  【網站聲明】本站部分內容來源于互聯網,旨在幫助大家更快的解決問題,如果有圖片或者內容侵犯了您的權益,請聯系我們刪除處理,感謝您的支持!

                  相關文檔推薦

                  Use IScroll in Angular 2 / Typescript(在 Angular 2/Typescript 中使用 IScroll)
                  anime.js not working in Ionic 3 project(Anime.js 在 Ionic 3 項目中不起作用)
                  Ionic 3 - Update Observable with Asynchronous Data(Ionic 3 - 使用異步數據更新 Observable)
                  Angular 2: file not found on local .json file(Angular 2:在本地 .json 文件中找不到文件)
                  In Ionic 2, how do I create a custom directive that uses Ionic components?(在 Ionic 2 中,如何創建使用 Ionic 組件的自定義指令?)
                  Use ViewChild for dynamic elements - Angular 2 amp; ionic 2(將 ViewChild 用于動態元素 - Angular 2 amp;離子2)
                    <bdo id='EPcJn'></bdo><ul id='EPcJn'></ul>
                        • <i id='EPcJn'><tr id='EPcJn'><dt id='EPcJn'><q id='EPcJn'><span id='EPcJn'><b id='EPcJn'><form id='EPcJn'><ins id='EPcJn'></ins><ul id='EPcJn'></ul><sub id='EPcJn'></sub></form><legend id='EPcJn'></legend><bdo id='EPcJn'><pre id='EPcJn'><center id='EPcJn'></center></pre></bdo></b><th id='EPcJn'></th></span></q></dt></tr></i><div class="qwawimqqmiuu" id='EPcJn'><tfoot id='EPcJn'></tfoot><dl id='EPcJn'><fieldset id='EPcJn'></fieldset></dl></div>

                            <tbody id='EPcJn'></tbody>

                          <small id='EPcJn'></small><noframes id='EPcJn'>

                          <tfoot id='EPcJn'></tfoot>

                            <legend id='EPcJn'><style id='EPcJn'><dir id='EPcJn'><q id='EPcJn'></q></dir></style></legend>
                            主站蜘蛛池模板: 亚洲精品久久久一区二区三区 | 国产精品高潮呻吟久久 | 日韩欧美一区二区三区免费观看 | 中文字幕在线精品 | 久久av综合 | 久久精品屋 | 超级黄色一级片 | 男女啪啪高潮无遮挡免费动态 | 精品国产一区二区三区日日嗨 | 日本一区二区三区在线观看 | 午夜成人免费视频 | 黄免费观看 | 免费一级片 | 在线播放日韩 | av黄色在线 | 日本不卡一区二区三区 | 人人看人人草 | 久久免费高清 | av黄色免费 | 久久久黑人 | a免费观看 | 久久久久久久久久久久久久国产 | 91视视频在线观看入口直接观看 | 国产精品美女久久久免费 | 精品福利在线 | 狠狠操天天操 | 久久久不卡网国产精品一区 | 国产亚洲www | 精品久久久久久久久久久久久久 | 欧美日韩中文字幕 | 久久久精品久久 | 国产内谢 | 99精品国产一区二区三区 | 欧美一级二级在线观看 | 精品国产精品 | av三级在线观看 | 精精国产xxxx视频在线野外 | 一区二区在线免费观看 | 日韩1区| 日韩中文字幕在线视频观看 | 国产精品免费看 |