only using mapboxGL library, attribution required? - mapbox

If I use mapboxGL library, without using any Mapbox basemap or data (I guess is possible to add as basemap my own WMS), do I have to keep the Mapbox watermark?
I had to read a few times, but I understand from the documentation that the answer is NO, I don't have to keep the watermark.
Just to make sure :.)

That's correct. You don't need to provide any attribution if you're not using Mapbox data or designs.
From the linked doc:
If your map does not use Mapbox designs, data, hosting, or other Mapbox APIs, Mapbox does not require you to provide attribution in either form.

If this is a serious project, and you need advice on licensing, I'd consult with a lawyer. They can accurately tell you what kinds of attribution and licensing you need. Additionally this will protect you as you build your own ToS.

Related

Partial update of mapbox tileset

I have a mapbox tileset with lots of small data points and I regularly need to update one data point at a time. Is it possible to programmatically update a mapbox tileset in a partial way? These instructions from the mapbox docs and this stack overflow question explain how to overwrite a tileset file. This is useful but seems like overkill if I just want to update 1 point out of thousands.
I think what you're after is Mapbox's tippecanoe.
No. But probably the better way to update a source is using the tiling service API: https://docs.mapbox.com/api/maps/mapbox-tiling-service/#replace-a-tileset-source

Drawing unity 3D Map based on real world map

I'm using mapbox SDK for unity. I'm trying to build a 3D map based on a real world map.
mapbox have some really nice features but all areas are not implemented yet, such as deserts in Saudi Arabia.
Does anyone have an idea about how can I elevate the desert into beautiful 3D map using mapbox?
Or do you know any other SDK for unity that can help me with this?
Please note that I need to use real world coordinates (Longitude,
Latitude) in my game, Pins will be inserted on map based on real world
coordinates.
Elevation Data Sources
There are multiple sources that provide elevation data. Bing Maps, Mapbox and ArgGIS (ESRI) are the most well-known services in that area. In rare cases like deserts some of them cover areas whereas the others do not. In your case if MapBox does not cover the Saudi-Arabian desert you can try out one of those other sources.
Mixed Data Sources
In order so solve your problem within MapBox you have to first extract data from a viable source and provide it to MapBox. Fortunately MapBox supports third-party data: MapBox: how to use custom data
There are also many third-party tools that you can use or learn from.
Have a look at this Asset from the Unity Asset Store for example: Online Maps v3
This asset allows you to keep your MapBox style, cache the tiles locally to save cost, use multiple elevation sources, create 3D-buildings in cities and fill in relevant data from the google api.
Missing Data
In order to have a globally working game you have to check multiple sources and use the one that has the elevation data that you want. Unfortunately, in some cases you won't find any data at all as it has not been mapped yet at all. In this case you have to exclude it from your game.

mapboxgl.js versus leaflet.js

I am about to start a web application with the main purpose of displaying a mapbox map, toggle layers and display data based on interactions with the map.
I'm wondering should I be using mapboxgl.js AND leaflet.js, mapboxgl.js OR leaflet.js. Everyone keeps saying leaflet is amazing but wondering if mapboxgl gives you the same functionality and performance? I keep reading conflicting things on the internet
Would really appreciate the help
A few words to clarify the difference:
mapboxgl uses browsers' WebGL technology, therefore it requires a modern enough browser, and uses more client computing power. The advantage is that it can natively handle vector tiles and render them any way you like (rotation, tilt, perspective like for a GPS navigation device, custom style, etc.)
Leaflet uses plain DOM manipulation, and is designed to (theoretically) support old browsers like IE8. It is very efficient for such old browsers, and also mobile-friendly due to this lightweight computing footprint. The advantage is that it enables you including a basic map without too much overhead. Most basic usages can be covered with Leaflet, possibly with some plugins. The drawback is that it mainly supports raster tiles, so they must be rendered server-side (mapbox provides such service).

Symbolizing OpenStreetMap layers in MapBox

Newbie post here, so forgive me if there's a better place for this, or if my question has been answered already.
I am trying to develop an interactive trail map for my town. I have added all of the trails into the OSM database, with good topology and tags for technical difficulty, quality etc:
http://www.openstreetmap.org/#map=16/49.0843/-117.7981
I am looking to develop the map using MapBox and Tilemill. My question is: If my main goal is to symbolize the OSM highway=cycleway features based on their difficulty tags, can I skip the whole tile creation process? If so, how would I go about symbolizing the various trails based on difficulty?
If I'm not interested in a custom basemap, is there any other advantage to using MBTiles? Here is my current working MapBox map, which is using a single MBTile:
http://www.kootenaymaps.ca/wp-content/uploads/2014/03/MapBoxEXAMPLE.html
Thanks in advance for any guidance here...
Barry
I have no experience with Tilemill but AFAIK it is designed to create webmabs on tile base only. So you might use another desktop renderer as Maperitive for example. Please also keep in mind, that there are already various approaches to create hiking maps online, for GPS and printing ;).

Indoor map creator

I have designed and developed couple of navigation apps using google API and osmdroid API for android powered devices. Now I am looking to create an Indoor navigation system using osmdroid API. But, in order to do so I need to create tiles similar to regular map tiles from an simple PNG file with naming convention similar to OpenStreetMap.
Please suggest me how to do this?
Cheers,
Susheel
You could design your indoor map using JOSM. Save it to a .osm file. Don't upload the data to OpenStreetMap unless it is a appropriate to do so (OpenStreetMap has some basic some indoor features, e.g. a highway=footway running through a shopping mall, but generally a lot of very detailed indoor stuff will be inappropriate for OSM) But...
With a .osm file you could then use one of the OpenStreetMap rendering tools to create a raster map, and chop it into tiles. For quick satisfaction I'd recommend Maperative, although I'm not sure how easy the last tile chopping step is. I've never done this with Maperative. Mapnik has a nice generate_tiles.py output, which will give you the tileset you want, but it's a bit tricky to set up in the first place.
Actually the last step is the main thing you're asking about. You can chop up any image into tiles. It may or may not be important to you that the tiles are geo-positioned in some meaningful way. For an old project I did a quick fudge solution using google tile cutter script, which is actually a wrapper around GDAL tools.
Have a look at the gdal library, and in particular gdal2tiles. This is a library designed to create maps from raster images, and serves exactly your purpose.
You can decide on a projection and what the bounds of your source image(s) are. The library allows you to reproject your image to the correct coordinate space.
It can also generate tiles at various zoom levels using gdal2tiles, either with or without reprojection.
Now you can check indoor rendering by drag and dropping OSM geojson data into https://app.openindoor.io web page.