Continued from https://github.com/mapbox/DEPRECATED-mapbox-gl/issues/6
@peterqliu
We should take advantage of the extra dimension that map pitching affords us, and use depth to visualize overlapping elements that would otherwise obstruct each other.
Currently, the layer stack order is dictated by the sequence it was specified in the stylesheet; when applied, the proposed z-offset would override that. This is analogous to HTML's natural stacking order overridden by
z-indexin CSS.Also, label rendering order is currently tightly bound to layers' z-order, because they both key off of the stylesheet layer sequence. Adding z-offset will free us to decide which layers get rendering priority, regardless of whether they go above or below other layers.
cc @lucaswoj @kkaefer
cc @tmcw @samanpwbb @jfirebaugh @ansis
Allowing polygons and symbols to have an altitude or z value would then mean that data presented by fill-extrusion could be represented and interrogated consistent with the 3D presentation [mockup]:

@ashleyclough Ohh gooosh how u did the markers extrude?
I didn't, the image is just a mockup, created in Photoshop, of how I would like it to work!
Is there any progress on this feature? I'm building a indoor 3D application and need to have markers or popups to offset from the terrain when the map is pitched. Is there an alternative solution to make this work?
We're currently working on a new approach to symbol placement (collision avoidance) that will be able to handle symbols with z offsets. After we finish that we can take a look at adding this to the spec and implementing it.
Hi ansis, any updates on this topic? Is it in the roadmap?
@mariokam check out the roadmap here
Thanks peterqliu, and I know about this roadmap, but I would expect that big company/startup as Mapbox to have more detailed roadmap, than 4 features in progress and 4 feature in long-term. So I don't see any plans even for z offsets
Any updates on this? I have need of this for a client project where we have several raster layers stacked that need an offset so you can tell them apart.
@xkisu, @mariokam the new approach to symbol placement is being ported from here to mapbox/mapbox-gl-native. We'll be able to start looking at this after that is done.
I hope mapbox can support altitude in geojson or can set height attribute in a layer..
We're setting a raster layer height value and it does draw the layer but only at certain angles. Will this issue (above) address that? It looks like some sort of clipping occurs depending on angle. Any tip?

Another vote for supporting relatively basic 3d features in the sense of being able to show overlapping features in 3d space (map pitch) - i.e. a bridge crossing a road, or multiple floor levels inside a building shell. i.e. very simple support for a z-height coordinate, not unlike PostGIS supports a height coordinate.
well, i am just hit this when i want to show an indoor map.
all is ok, except for the symbol on top of Extrude layer
my example url
This is something that we'd very much like to see and seems like a necessity in a platform that supports 3d mapping. Are there any updates on a timeline for this? Is there any comparable functionality already existing in the native-sdks?
Any updates on this?
Any updates on this?
Any updates on this???
We need a feature, like being able to set the z offset or base height to speak in fill extrusion lang, too. Please give us feedback about related plans.
Any updates on this????
@maroonedione @fea17e86 @leehoss This is on our radar, but not currently on our roadmap over the next 6 months.
We on ClimaCell want it too.
Upvote! 鉁岋笍
+1
We really want this feature of Z-offsets per point of a line
+1
+1
+1 - need to label extruded buildings at the top.
stop getting my hopes up with the pointless +1 bumps :P
https://deck.gl/#/examples/overview?section=core-layers is able to do it and it can also be integrated with mapbox.
Some work on this is being done in the Vector Tile 3 specification. This is part of the team's long term roadmap, but there is not a timeframe for it as yet.
any updates?
How come wrld.js is able to apply this using the elevation property in marker?
How come wrld.js is able to apply this using the elevation property in marker?
This ticket is specifically about layers in the style spec, so excludes Marker elements, I think it's worth opening a separate ticket for Marker elevation/z-offset.
This ticket is specifically about layers in the style spec, so excludes Marker elements, I think it's worth opening a separate ticket for Marker elevation/z-offset.
But this issue says discussion should be concentrated here no?
https://github.com/mapbox/mapbox-gl-js/issues/8988
But this issue says discussion should be concentrated here no?
Ok, Personally I see them as different issues still, one is for layers part of the style spec, the other is for Marker elements. Different implementation and different API.
Hoping to bring some attention back to this...
Any updates on this?
three.js could help...
I'll be coming up with a more detailed use-case for this, but basically , a way to set the point's elevation is vital for visualizing points at different levels.
Our motivation is, we are surveyors working for a major tunnel project here in AU , and part of what we visualize is the monitoring status of the points for critical supporting structure. We are building a web-based site to be able to monitor the status.
Currently, the points in the area we are monitoring at the moment, look flat,

when at least we wanted to reflect the multi-level nature of the points.

And, I am not yet referring to the negative extrusion heights that should be useful in visualizing the whole area - this is part of an underground tunnel infrastructure ( which I would happily ask a feature request for separately.)
If someone can refer me to the format I can use to present this use-case, it would be helpful.
I hope we can push for the development of this feature, even just the support for the elevation for point layers.
Also if you feel that I am in the wrong issue, please feel free to advise me.
Many thanks!
@arcsump Metro tunnel? I work for CoM across the road! Have you tried any esri arcgis JS products? The developer experience is horrible but it鈥檚 pretty powerful when it comes to 3D, supporting both elevation and negative elevation.
well, i am just hit this when i want to show an indoor map.
all is ok, except for the symbol on top of Extrude layer
my example url
Can i get the source code?
@arcsump Metro tunnel? I work for CoM across the road! Have you tried any esri arcgis JS products? The developer experience is horrible but it鈥檚 pretty powerful when it comes to 3D, supporting both elevation and negative elevation.
Yes, thank you for the suggestion - will definitely look at this and wrld.js as I am not sure what is the status of the request, as they pride on 3d stuff, but seem to have missed out on this functionality.
P.S. nice to know that you are in the "neighborhood", I am but a worker, I must say :-)
an alternative is to use Maptalks until the feature can be implemented.
three.js could help...
It could
In fact a complex solution was implemented for popups in #9814
Most helpful comment
Allowing polygons and symbols to have an altitude or z value would then mean that data presented by fill-extrusion could be represented and interrogated consistent with the 3D presentation [mockup]: