我正在尝试创建建筑物内部的自定义 Google 街景。我看过很多地方,我已经看到了如何做到这一点的基本想法。我一直在使用此链接 http://googlemaps.googlermania.com/google_maps_api_v3/en/custom_streetview/index.html 以及其他示例。他们似乎有非常相似的代码,但他们似乎都缺乏如何设置文件。如果有人知道我在哪里可以找到一个工作示例,我应该能够向后工作,如果有人可以为我提供一些详细的说明,我将非常感激。
我有一个运行 Ubuntu 服务器的 VirtualBox。
在服务器上,我有一个名为 street.html 的 html 文件(代码如下)。
我还有一个名为“lab_tiles”的文件夹,其中包含“lab_test”,其中包含多个命名模式为 XX-YY_s1.jpg(即 00-00_s1.jpg、00-01_s1.jpg、00-02_s1.jpg)的 jpeg
我有以下html文件的代码。
<!DOCTYPE html>
<html>
<head>
<title>Custom Street View panorama tiles</title>
<meta charset="utf-8">
<link href="/maps/documentation/javascript/examples/default.css" rel="stylesheet">
<script src="https://maps.googleapis.com/maps/api/js?v=3.exp&sensor=false"></script>
<script type='text/javascript'>
function code3_2() {
// Set StreetView provider.
var streetViewOptions = {
zoom: 1,
pano : "lab_test",
panoProvider: getCustomPanorama
};
// Create a StreetView object.
var streetViewDiv = document.getElementById('streetview_canvas1');
streetViewDiv.style.fontSize = "15px";
var streetView = new google.maps.StreetViewPanorama(streetViewDiv, streetViewOptions);
}
function getCustomPanoramaTileUrl(panoID, zoom, tileX, tileY) {
// Return a pano image given the panoID.
return "lab_tiles/" + panoID + '/' + tileX + '-' +tileY + '_s1.jpg';
}
function getCustomPanorama(panoID) {
var streetViewPanoramaData = {
links: [],
copyright: 'People at my job',
tiles: {
tileSize: new google.maps.Size(256, 256),
worldSize: new google.maps.Size(2048, 1024),
centerHeading: 0,
getTileUrl: getCustomPanoramaTileUrl
}
};
switch(panoID) {
case "lab_test":
streetViewPanoramaData["location"] = {
pano: 'lab_test',
description: "lab test",
latLng: new google.maps.LatLng(37.556429,-122.050745)
};
return streetViewPanoramaData;
}
}
google.maps.event.addDomListener(window, 'load', code3_2);
</script>
</head>
<body>
<div id="map-canvas"></div>
</body>
</html>