Add coord to map, fix pixel shift in zoom
This commit is contained in:
parent
ca4da88ddb
commit
c134280b63
12
index.html
12
index.html
@ -23,7 +23,7 @@ html, body, #map {
|
|||||||
<script type="text/javascript">
|
<script type="text/javascript">
|
||||||
var MAP_POS = [-909, 1908];
|
var MAP_POS = [-909, 1908];
|
||||||
var MAP_ZOOM = 7;
|
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 = [
|
var MAP_POINTS = [
|
||||||
[-909, 12, 1908, "Spawn"],
|
[-909, 12, 1908, "Spawn"],
|
||||||
[172, 19, 1288, "Maison/Supermarché de tuxmain"],
|
[172, 19, 1288, "Maison/Supermarché de tuxmain"],
|
||||||
@ -47,6 +47,16 @@ var map = L.map("map", {
|
|||||||
"crs": L.CRS.Simple,
|
"crs": L.CRS.Simple,
|
||||||
"maxZoom": 10
|
"maxZoom": 10
|
||||||
}).setView([MAP_POS[1]/128, MAP_POS[0]/128], MAP_ZOOM);
|
}).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({
|
L.control.layers({
|
||||||
"Juneland Survival": L.tileLayer(MAP_TILES, {attribution: "CC BY-SA Juneland Players"}).addTo(map)
|
"Juneland Survival": L.tileLayer(MAP_TILES, {attribution: "CC BY-SA Juneland Players"}).addTo(map)
|
||||||
}, {
|
}, {
|
||||||
|
31
mtmapper.py
31
mtmapper.py
@ -18,7 +18,7 @@ MINETESTMAPPER_PATH = "/home/tuxmain/minetestmapper/minetestmapper"
|
|||||||
WORLD_PATH = "/var/games/minetest-server/.minetest/worlds/juneland-survival/"
|
WORLD_PATH = "/var/games/minetest-server/.minetest/worlds/juneland-survival/"
|
||||||
|
|
||||||
# Path to the folder which will contain the tiles
|
# 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).
|
# Zoom level corresponding to 1:1 ratio (1 node = 1 pixel).
|
||||||
# You usually don't need to change this.
|
# You usually don't need to change this.
|
||||||
@ -47,21 +47,24 @@ MINETESTMAPPER_OPTIONS = [
|
|||||||
|
|
||||||
#### END SETTINGS
|
#### 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__":
|
if __name__ == "__main__":
|
||||||
y = ZOOM_LEVEL
|
y = ZOOM_LEVEL
|
||||||
for x in range(-RAY, RAY):
|
for x in range(-RAY, RAY):
|
||||||
os.makedirs(OUTPUT_PATH+"{}/{}".format(y, x), exist_ok=True)
|
os.makedirs(OUTPUT_PATH+"{}/{}".format(y, x), exist_ok=True)
|
||||||
for z in range(-RAY, RAY):
|
for z in range(-RAY, RAY):
|
||||||
#print(y, x, z, end="\r")
|
#print(y, x, z, end="\r")
|
||||||
cmd = [
|
run_minetestmapper(x, y, z)
|
||||||
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)
|
|
||||||
|
|
||||||
f = 2
|
f = 2
|
||||||
for y in range(ZOOM_LEVEL-1, MIN_ZOOM_LEVEL-1, -1):
|
for y in range(ZOOM_LEVEL-1, MIN_ZOOM_LEVEL-1, -1):
|
||||||
@ -105,8 +108,8 @@ if __name__ == "__main__":
|
|||||||
except FileNotFoundError:
|
except FileNotFoundError:
|
||||||
continue
|
continue
|
||||||
img = img.resize((TILE_SIZE*2, TILE_SIZE*2))
|
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((0, 0, TILE_SIZE, TILE_SIZE)).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((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-1, TILE_SIZE*2-1)).save("{}{}/{}/{}.png".format(OUTPUT_PATH, y, x*2, z*2+1))
|
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-1, TILE_SIZE*2-1)).save("{}{}/{}/{}.png".format(OUTPUT_PATH, y, x*2+1, 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
|
f *= 2
|
||||||
|
Loading…
x
Reference in New Issue
Block a user