hyperknot / openfreemap

Free and open-source map hosting solution with custom styles for websites and apps, using OpenStreetMap data
https://openfreemap.org/
Other
2.87k stars 58 forks source link

Usage with geo-three #18

Closed shot-codes closed 1 month ago

shot-codes commented 1 month ago

I am attempting to use the openfreemap public instance for loading tiles in threejs using geo-three. I'm having a hard time finding info on how the tiles are served from the public instance. geo-three has an OpenStreetMapsProvidor object that states:

Works with any service that uses a address/zoom/x/y.format URL for tile access.

Is there support for such tile access with openfreemap? If so, what is the base url? Is the public instance otherwise documented somewhere?

Thanks for this initiative!

hyperknot commented 1 month ago

Hi,

Basically the page: https://openfreemap.org/quick_start/ describes how to use the public instance.

What you need is this URL: image

I don't know how to use it with geo-tree. If you figure it out, please share it here as well, so others can use your information.

shot-codes commented 1 month ago

Thanks for the response. The key to using geo-three here is that the tile server provides the address/zoom/x/y.format URL pattern. I looked at network activity on the browser devtools when using the sample map on the openfreemap homepage and it looks like it is using the same format; This is a successful GET request for one of the tile images: https://tiles.openfreemap.org/planet/20240918_001001_pt/9/274/167.pbf.

If I pass the base url https://tiles.openfreemap.org/planet/20240918_001001_pt/ to geo-three I get successful GET requests in the same format but requesting pngs and not pbf, and so the response size is 0 (no data is being returned); https://tiles.openfreemap.org/planet/20240918_001001_pt/4/6/7.png

I will look into creating openfreemap as a provider for geo-three. If you have any general comments/guidance on the image type returned it would be appreciated :)

hyperknot commented 1 month ago

PNG is raster tiles, PBF is vector tiles. These are two different technologies, and they are not compatible with each other. I recommend asking the geo-three community if PBF vector tiles are supported or not.