diff --git a/setup.py b/setup.py index 32360fb..a03fee6 100644 --- a/setup.py +++ b/setup.py @@ -59,6 +59,7 @@ c_overviewer_files += ['src/rendermodes.c', 'src/rendermode-normal.c', 'src/rend c_overviewer_files += ['src/Draw.c'] c_overviewer_includes = ['src/overviewer.h', 'src/rendermodes.h'] setup_kwargs['ext_modules'].append(Extension('c_overviewer', c_overviewer_files, include_dirs=['.', numpy_include] + pil_include, depends=c_overviewer_includes, extra_link_args=[])) + # tell build_ext to build the extension in-place # (NOT in build/) setup_kwargs['options']['build_ext'] = {'inplace' : 1} diff --git a/web_assets/functions.js b/web_assets/functions.js index 65a78d4..3e09788 100644 --- a/web_assets/functions.js +++ b/web_assets/functions.js @@ -185,6 +185,20 @@ function initMarkers() { continue; } + if (item.type == 'querypos') { + // Set on page load if MC x/y/z coords are given in the query string + + iconURL = 'http://google-maps-icons.googlecode.com/files/regroup.png'; + var converted = fromWorldToLatLng(item.x, item.y, item.z); + var marker = new google.maps.Marker({position: converted, + map: map, + title: jQuery.trim(item.msg), + icon: iconURL + }); + + continue; + } + var matched = false; for (idx in signGroups) { var signGroup = signGroups[idx]; @@ -247,10 +261,19 @@ function initMarkers() { function makeLink() { + var displayZoom = map.getZoom(); + if (displayZoom == config.maxZoom) { + displayZoom = "max"; + } else { + displayZoom -= config.maxZoom; + } + var xyz; + var xyz = fromLatLngToWorld(map.getCenter().lat(), map.getCenter().lng()); var a=location.href.substring(0,location.href.lastIndexOf(location.search)) - + "?lat=" + map.getCenter().lat().toFixed(6) - + "&lng=" + map.getCenter().lng().toFixed(6) - + "&zoom=" + map.getZoom(); + + "?x=" + Math.floor(xyz.x) + + "&y=" + Math.floor(xyz.y) + + "&z=" + Math.floor(xyz.z) + + "&zoom=" + displayZoom; document.getElementById("link").innerHTML = a; } @@ -265,6 +288,11 @@ function initialize() { var lng = defaultCenter.lng(); var zoom = config.defaultZoom; + var hasquerypos = false; + var queryx = 0; + var queryy = 64; + var queryz = 0; + var mapcenter; var pairs = query.split("&"); for (var i=0; i