You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

62 lines
1.8 KiB
JavaScript

function initMap() {
var myLatlng = {lat: 23.777176, lng: 90.399452};
var map6 = new google.maps.Map(document.getElementById('map6'), {
zoom: 4,
center: myLatlng
});
var marker = new google.maps.Marker({
position: myLatlng,
map: map6,
title: 'Click to zoom'
});
var TILE_SIZE = 256;
function createInfoWindowContent(latLng, zoom) {
var scale = 1 << zoom;
var worldCoordinate = project(latLng);
var pixelCoordinate = new google.maps.Point(
Math.floor(worldCoordinate.x * scale),
Math.floor(worldCoordinate.y * scale));
var tileCoordinate = new google.maps.Point(
Math.floor(worldCoordinate.x * scale / TILE_SIZE),
Math.floor(worldCoordinate.y * scale / TILE_SIZE));
return [
'Chicago, IL',
'LatLng: ' + latLng,
'Zoom level: ' + zoom,
'World Coordinate: ' + worldCoordinate,
'Pixel Coordinate: ' + pixelCoordinate,
'Tile Coordinate: ' + tileCoordinate
].join('<br>');
}
// The mapping between latitude, longitude and pixels is defined by the web
// mercator projection.
function project(latLng) {
var siny = Math.sin(latLng.lat() * Math.PI / 180);
// Truncating to 0.9999 effectively limits latitude to 89.189. This is
// about a third of a tile past the edge of the world tile.
siny = Math.min(Math.max(siny, -0.9999), 0.9999);
return new google.maps.Point(
TILE_SIZE * (0.5 + latLng.lng() / 360),
TILE_SIZE * (0.5 - Math.log((1 + siny) / (1 - siny)) / (4 * Math.PI)));
}
}