How do I create a reference layer for my VectorTile basemap?

442
6
08-21-2020 10:53 AM
FabioLuiz
New Contributor III

How do I create a reference layer for my VectorTile basemap with ArcGIS Pro?
I created a vector tile and to use it as a basemap in my work, but when I add a layer over my basemap it covers all the labels.
How can I create a reference layer that is over the entire content of the map?

Thanks

original:

Como criar uma camada de referência para meu basemap VectorTile no ArcGIS Pro?
Criei um vector tile e para usar como basemap em meu trabalho, mas quando adiciono uma camada sobre meu basemap esta cobre todos os rótulos.
Como posso criar uma camade de referência que fique sobre todo o conteúdo do mapa?

Fábio Luiz

Santos-SP / Brasil

0 Kudos
6 Replies
VeronicaCreed
Esri Contributor

Hi Fabio! Have you tried running the Convert Labels to Annotation tool? This will take labels from either a single layer or an entire map and create an annotation feature class. For specific information regarding usage and parameters, please refer to the documentation below.

Convert labels to annotation -https://pro.arcgis.com/en/pro-app/tool-reference/cartography/convert-labels-to-annotation.htm 

Hope this helps!

FabioLuiz
New Contributor III

I was hoping that ArcGIS Pro would do this job when creating a vector package.

Thank you Veronica!

0 Kudos
ZacharyUhlmann1
Occasional Contributor II

Continuing this somewhat old thread (thanks @FabioLuiz ) - is there an official way to create a reference layer for vector tiles?  I'm running into the same issue.  The solution you post @VeronicaCreed seems like a...hack.  It will work, but it seems the benefit of controlling label visibility ranges and appearance afforded by vector tiles is not useful in practice, since they just get covered up by operational feature layers.  See below, my tile package feature - the split pea color road, is covered by an operational layer (red).  

label_issue.JPG

Is the annotation solution the best work-around for this issue, or has the problem been addressed - can I use reference layers?

thanks - Zach

0 Kudos
BrianWilson7
Regular Contributor

At the end of the day it's all hacks. There is never a correct answer.

My hack -- I created two maps, one showing only the labels and one showing only the features. Then I generate a vector tile service from each map. You can do most of the maplex things to make the labels work for you.

You can see this in action on our public site, https://delta.co.clatsop.or.us/apps/ClatsopCounty/

In the layers you can see near the top "Clatsop County labels" and somewhere towards the bottom "Clatsop County" which contains features. These layers have been designed to work well either with a plain white background or any of a variety of different aerials.

Personally I generate the layers with code, because I use code a lot :-), and it is here now: https://github.com/bwilsoncc/basemap  

I guess this is the dichotomy. I use Maplex and Python because I don't like finagling every single label with annotation. Other people prefer Annotation because they don't like Python, and they actually want the control over every label.

0 Kudos
ZacharyUhlmann1
Occasional Contributor II

Thanks Brian.  Looks like meaty, straightforward web app - I like it.  So are the two layers you mentioned on the Clatsop County Webmaps page (Clatsop County and Clatsop County Labels) Vector Tile Features?  If so, my issue is that I have map with approx. 10 layers that need to be compatible with popups in Collector or Field Maps.  My labels are from basic street and whatever base data.  Vector Layers don't appear to offer that capability.  It appears that you were able to stack the labels vector layer on top of feature classes like Flood Hazards... I cannot do that in a Web Map. 

I look forward to diving into your Github Basemaps repository more closely!  In terms of annotations...those and labels suck the life out of me.  But I produce a lot of static pdf maps with very picky label detail clients.  Pro is a bit slow with annos, but I generally go that route.  Unless I'm missing something with Maplex, it's pretty hit or miss for me, so I split time between the two. But I am still curious if your web app allows for tile layers to be stacked on top.  And what do you use to build your apps?  Are you a cursory or heavy java user or were you able to get good functionality in GUI-land?  I appreciate your help.  Oh, and I reposted a different version of this question prior to receiving your response.  Seemed higher likelihood of getting responses with new question post.

0 Kudos
BrianWilson7
Regular Contributor

We have cartographers who do our tax maps and they absolutely love placing annotation by hand.  There is a MIL called "Taxlot text" in the webmap that has some of that. It sort of looks okay sometimes.

I spent about a year playing with MapLex and when I had everything looking great got some requests that required converting it to anno so I've done only a little of that.  "Can you make the label for Felton just a little bigger and move it over here? And make it grey. Everything else is great." (Maybe it only FELT like a year!) Then after all that effort I tried publishing and found it laughing at me "You can't use MAPLEX? What were you thinking! I converted all your Maplex to ugly mode for you!" Then I found out I could make a vector tile package directly from a maplex layer and it still looked okay! That was the whole motivation. 

Currently we have many MapServer services that were published in ArcMap in there that are slowly being replaced with MILs published in Pro, but they all seem to work the same in the map. Only Feature Services insist on being at the top and only Basemaps insist on being at the bottom.

Our team here has 2 normal GIS folk and me, who wants to work only in code if given a choice. Therefore most of our apps are built in Web App Builder, and now we use only the Developer Edition after upgrading to 10.8 destroyed all the apps we built in Portal. We also have a couple apps built in Experience Builder now. Using the "builders" means they can do most of the work!! I just have to keep the builders running and manage deployments.

I use Python for most things but am dabbling in Javascript with Svelte now. I programmed in C# and Java and pretty much hated it, too finicky. I laugh at Arcade.

 

 

0 Kudos