Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/google-maps/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 解析谷歌街景api中的url_Javascript_Google Maps_Google Maps Api 3 - Fatal编程技术网

Javascript 解析谷歌街景api中的url

Javascript 解析谷歌街景api中的url,javascript,google-maps,google-maps-api-3,Javascript,Google Maps,Google Maps Api 3,这是街景API V3的一个工作示例: <!DOCTYPE html> <html> <head> <meta http-equiv="content-type" content="text/html; charset=utf-8"/> <title>Google Maps JavaScript API Example: Street View Events</title> <link href="/maps/docum

这是街景API V3的一个工作示例:

<!DOCTYPE html>
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8"/>
<title>Google Maps JavaScript API Example: Street View Events</title>
<link href="/maps/documentation/javascript/examples/default.css" rel="stylesheet" type="text/css" />
<script src="https://maps.googleapis.com/maps/api/js?sensor=false"
        type="text/javascript"></script>
<script type="text/javascript">

  var cafe = new google.maps.LatLng(37.869085,-122.254775);

  function initialize() {

    var panoramaOptions = {
      position: cafe,
      pov: {
        heading: 270,
        pitch: 0,
        zoom: 1
      },
      visible: true
    };
    var panorama = new google.maps.StreetViewPanorama(document.getElementById("pano"), panoramaOptions);

    google.maps.event.addListener(panorama, 'pano_changed', function() {
        var panoCell = document.getElementById('pano_cell');
        panoCell.innerHTML = panorama.getPano();
    });

    google.maps.event.addListener(panorama, 'links_changed', function() {
        var linksTable = document.getElementById('links_table');
        while(linksTable.hasChildNodes()) {
          linksTable.removeChild(linksTable.lastChild);
        };
        var links =  panorama.getLinks();
        for (var i in links) {
          var row = document.createElement("tr");
          linksTable.appendChild(row);
          var labelCell = document.createElement("td");
          labelCell.innerHTML = "<b>Link: " + i + "</b>";
          var valueCell = document.createElement("td");
          valueCell.innerHTML = links[i].description;
          linksTable.appendChild(labelCell);
          linksTable.appendChild(valueCell);
        }
    });

    google.maps.event.addListener(panorama, 'position_changed', function() {
        var positionCell = document.getElementById('position_cell');
        positionCell.firstChild.nodeValue = panorama.getPosition();
    });

    google.maps.event.addListener(panorama, 'pov_changed', function() {
        var headingCell = document.getElementById('heading_cell');
        var pitchCell = document.getElementById('pitch_cell');
        headingCell.firstChild.nodeValue = panorama.getPov().heading;
        pitchCell.firstChild.nodeValue = panorama.getPov().pitch;
    });
}
</script>
</head>
<body onload="initialize()">
  <div id="pano" style="width: 425px; height: 240px;float:left"></div>
  <div id="panoInfo" style="width: 425px; height: 240 px;float:left">
  <table>
  <tr>
    <td><b>Position</b></td><td id="position_cell">&nbsp;</td>
  </tr>
  <tr>
    <td><b>POV Heading</b></td><td id="heading_cell">270</td>
  </tr>
  <tr>
    <td><b>POV Pitch</b></td><td id="pitch_cell">0.0</td>
  </tr>
  <tr>
    <td><b>Pano ID</b></td><td id="pano_cell">&nbsp;</td>
  </tr>
  <table id="links_table">
  </table>
  </table>
  </div>
</body>
</html>

GoogleMapsJavaScriptAPI示例:街景事件
var cafe=new google.maps.LatLng(37.869085,-122.254775);
函数初始化(){
变量全景选项={
职位:咖啡馆,
pov:{
标题:270,
音高:0,
缩放:1
},
可见:正确
};
var panorama=new google.maps.StreetViewPanorama(document.getElementById(“pano”),全景选项);
google.maps.event.addListener(panorama,'pano_changed',function(){
var panoCell=document.getElementById('pano_cell');
panoCell.innerHTML=panorama.getPano();
});
google.maps.event.addListener(全景图,'links_changed',函数(){
var linksTable=document.getElementById('links_table');
while(linksTable.hasChildNodes()){
linksTable.removeChild(linksTable.lastChild);
};
var links=panorama.getLinks();
for(链接中的变量i){
var行=document.createElement(“tr”);
linksTable.appendChild(行);
var labelCell=document.createElement(“td”);
labelCell.innerHTML=“链接:“+i+”;
var valueCell=document.createElement(“td”);
valueCell.innerHTML=链接[i]。说明;
linksTable.appendChild(labelCell);
linksTable.appendChild(valueCell);
}
});
google.maps.event.addListener(全景图,'position_changed',函数(){
var positionCell=document.getElementById('position_cell');
positionCell.firstChild.nodeValue=panorama.getPosition();
});
google.maps.event.addListener(全景图,'pov_changed',函数(){
var headingCell=document.getElementById('heading_cell');
var pitchCell=document.getElementById('pitch_cell');
headingCell.firstChild.nodeValue=panorama.getPov().heading;
pitchCell.firstChild.nodeValue=panorama.getPov().pitch;
});
}
位置
POV头270
POV 0.0
全景ID

我整天都在搜索如何将google maps街景url解析为google maps街景嵌入javascript,但我似乎在任何地方都找不到解决方案,需要解析如下内容:

有一个查询字符串库:。在node.js和浏览器中工作。

pano position=37.588929,--87.337506“ll=” 看起来“cbp=”将为您提供航向、俯仰和缩放

看看他们的意思

更新(mapki.com似乎不见了): 据此:

“cbp=”的5个部分是窗口大小、航向(方位)、倾斜、缩放和俯仰(按顺序)