Add coord to map, fix pixel shift in zoom

This commit is contained in:
Pascal Engélibert 2022-02-19 11:40:37 +01:00
parent ca4da88ddb
commit c134280b63
Signed by: tuxmain
GPG Key ID: 3504BC6D362F7DCA
2 changed files with 28 additions and 15 deletions

View File

@ -23,7 +23,7 @@ html, body, #map {
<script type="text/javascript">
var MAP_POS = [-909, 1908];
var MAP_ZOOM = 7;
var MAP_TILES = "https://jirafeau.mamonnaielibre.fr/minetest-map/survival/{z}/{x}/{y}.png"
var MAP_TILES = "http://g1formation.fr/minetest-map/survival/{z}/{x}/{y}.png"
var MAP_POINTS = [
[-909, 12, 1908, "Spawn"],
[172, 19, 1288, "Maison/Supermarché de tuxmain"],
@ -47,6 +47,16 @@ var map = L.map("map", {
"crs": L.CRS.Simple,
"maxZoom": 10
}).setView([MAP_POS[1]/128, MAP_POS[0]/128], MAP_ZOOM);
var coord_popup = L.popup();
function onMapClick(e) {
coord_popup
.setLatLng(e.latlng)
.setContent(e.latlng.lng*128 + " " + e.latlng.lat*128)
.openOn(map);
}
map.on('click', onMapClick);
L.control.layers({
"Juneland Survival": L.tileLayer(MAP_TILES, {attribution: "CC BY-SA Juneland Players"}).addTo(map)
}, {

View File

@ -18,7 +18,7 @@ MINETESTMAPPER_PATH = "/home/tuxmain/minetestmapper/minetestmapper"
WORLD_PATH = "/var/games/minetest-server/.minetest/worlds/juneland-survival/"
# Path to the folder which will contain the tiles
OUTPUT_PATH = "/var/www/html/jirafeau/minetest-map/survival/"
OUTPUT_PATH = "/var/www/html/minetest-map/survival/"
# Zoom level corresponding to 1:1 ratio (1 node = 1 pixel).
# You usually don't need to change this.
@ -47,21 +47,24 @@ MINETESTMAPPER_OPTIONS = [
#### END SETTINGS
def run_minetestmapper(x, y, z):
cmd = [
MINETESTMAPPER_PATH,
"-i", WORLD_PATH,
"-o", OUTPUT_PATH+"{}/{}/{}.png".format(y, x, z),
"--geometry", "{}:{}+{}+{}".format(x*TILE_SIZE, (-1-z)*TILE_SIZE, TILE_SIZE, TILE_SIZE),
*MINETESTMAPPER_OPTIONS
]
#print(cmd)
subprocess.run(cmd)
if __name__ == "__main__":
y = ZOOM_LEVEL
for x in range(-RAY, RAY):
os.makedirs(OUTPUT_PATH+"{}/{}".format(y, x), exist_ok=True)
for z in range(-RAY, RAY):
#print(y, x, z, end="\r")
cmd = [
MINETESTMAPPER_PATH,
"-i", WORLD_PATH,
"-o", OUTPUT_PATH+"{}/{}/{}.png".format(y, x, z),
"--geometry", "{}:{}+{}+{}".format(x*TILE_SIZE, (-1-z)*TILE_SIZE, TILE_SIZE, TILE_SIZE),
*MINETESTMAPPER_OPTIONS
]
#print(cmd)
subprocess.run(cmd)
run_minetestmapper(x, y, z)
f = 2
for y in range(ZOOM_LEVEL-1, MIN_ZOOM_LEVEL-1, -1):
@ -105,8 +108,8 @@ if __name__ == "__main__":
except FileNotFoundError:
continue
img = img.resize((TILE_SIZE*2, TILE_SIZE*2))
img.crop((0, 0, TILE_SIZE-1, TILE_SIZE-1)).save("{}{}/{}/{}.png".format(OUTPUT_PATH, y, x*2, z*2))
img.crop((TILE_SIZE, 0, TILE_SIZE*2-1, TILE_SIZE-1)).save("{}{}/{}/{}.png".format(OUTPUT_PATH, y, x*2+1, z*2))
img.crop((0, TILE_SIZE, TILE_SIZE-1, TILE_SIZE*2-1)).save("{}{}/{}/{}.png".format(OUTPUT_PATH, y, x*2, z*2+1))
img.crop((TILE_SIZE, TILE_SIZE, TILE_SIZE*2-1, TILE_SIZE*2-1)).save("{}{}/{}/{}.png".format(OUTPUT_PATH, y, x*2+1, z*2+1))
img.crop((0, 0, TILE_SIZE, TILE_SIZE)).save("{}{}/{}/{}.png".format(OUTPUT_PATH, y, x*2, z*2))
img.crop((TILE_SIZE, 0, TILE_SIZE*2, TILE_SIZE)).save("{}{}/{}/{}.png".format(OUTPUT_PATH, y, x*2+1, z*2))
img.crop((0, TILE_SIZE, TILE_SIZE, TILE_SIZE*2)).save("{}{}/{}/{}.png".format(OUTPUT_PATH, y, x*2, z*2+1))
img.crop((TILE_SIZE, TILE_SIZE, TILE_SIZE*2, TILE_SIZE*2)).save("{}{}/{}/{}.png".format(OUTPUT_PATH, y, x*2+1, z*2+1))
f *= 2