Add an Esri Vector Basemap to Your App

08-26-2016 05:52 PM
Esri Contributor
5 0 1,717

Add an Esri Vector Basemap to Your App: By DCarroll-esristaff: The Esri Startup Program hosted a technical webinar, Tuesday, August 23rd, 2016 titled, Harness the Power of Vector Basemaps with Esri, offering emerging partners a chance to learn about how to boost the visual experience in their apps with Esri Vector basemaps and layers. Doug Carroll from Esri discussed the different vector basemap offerings, the global coverage, how to customize the style of your basemaps and how to develop with this awesome content. Guest speaker, Todd Berry, CTO of Snaptrends, an Esri partner and successful small business will elaborate on why they chose to implement Esri Vector Basemaps in their product offering. View the recording here: the slides here.

Why Use Vector Tiles?

As technology continues to evolve it’s important to consider when implementing new product improvements or features is truly a good fit. This is something Todd Berry, CTO of Snaptrends did immediately after Esri released vector basemap services.

Developers like Todd are now exposed to dozens of layer types such as feature layers, vector tile layers, hosted tiled layers and visual objects like Web Maps and Web Scenes. With so many different types, important decisions need to be made.  To help developers make the right decision, the Esri Startup Team decided to draw special attention to vector maps (aka vector tile services) because we think they’re an invaluable asset to create an impressive visual experience.

To recap the webinar, we’ve outlined some important details to evaluate, starting with asking when it’s right to implement vector mapping:

Consider vector maps when the following requirements need to be met:

  • When building mobile apps on high resolution devices
  • When GPU's can be taken advantage of (but watch out for IE support)
  • When showing thousands of features at once
  • When you have a workflow for onboarding new data and recreating vector tile caches

When should you not consider using vector maps?

  • When your app requires editing, as there are no editing capabilities currently available on vector tiles. For editing use feature layers.
  • When your app needs to display real-time data. For real-time data, consider stream layers or setting a refresh interval on a feature layer.
  • For most imagery content. Imagery is best served out as image service layers because there are loads of capabilities on Images Services to work with images.

Now if you’re feeling a little lost thinking about vector maps, that’s ok. Let us explain what vector maps are. If you think textbook you may be thinking vector maps are discrete data projected into a geographic space. That is true, but it leaves out how vector layers are implemented inside web, mobile and desktop clients. The fundamental difference between vector maps (as in vector tile layers) and the variety of other forms of vector layers is in how rendering and data parsing is implemented– aka it’s the code behind that makes vector tile layers different from feature layers, KML, GeoJSON, etc.

What are vector maps?

  • Vector tiles (aka vector maps) are a special layer type that taps into a system’s GPU for rendering.
  • Vector layers make it possible to stylize and show discrete data.
  • Vector layers transfer data in the form protobuf (protocol buffers tile format) which like raster png and jpg tiles is very performant (but when the client receives the file – the file is a much higher in resolution).
  • Vector tiles can come from a single data source (a single shapefile or feature class) or can be made from many data sources.

What is the difference between Esri vector basemaps and vector maps?

  • Functionally both are the same layer type.  The difference is content. Esri Vector Basemaps are a set of highly curated, high quality production basemaps for people to use how they see fit.
  • There are a set of 9 tile layers and 9 web maps of our basemaps found here.

What makes Esri vector basemaps special?

  • Big visual impact, it's like high definition mapping.
  • Impressive labels that rotate.
  • Vector layers in many ways merge together the best qualities of tile mapping and JSON based mapping.
  • Clients can draw and stylize millions of features instantly, without creating enormous tile caches.
  • Vector maps can be stylized, using simple styling code or by using apps like ArcGIS Pro as well as other open source projects like the arcgis-vectortile-style-editor or Vector Style JSON Editor (beta).
  • Vector maps are standards-based and interoperable.
  • Unlike other layer types, when implemented they make use of system Graphics Processing Units (GPUs) which accelerate rendering.
    • Content gets painted on the fly vs assembled together in a series of images.
    • Noteworthy: GPU access is now becoming cross platform.
      • On devices (OpenGL)
      • In browsers (WebGL)
      • On desktop machines (DirectX, OpenGL)
      • Even in virtualized systems (vGPU)
  • Vector tiles will not display messages to users saying they have exceeded the number of features they can view/draw.

How can I create my own vector tile data using feature classes and shapefiles?

  • Tile creation in ArcGIS Pro 1.2
  • Publish tile layers in ArcGIS Online and ArcGIS Server/Portal 10.4
  • Tile consumption
    • ArcGIS Runtime Quartz – Beta 2
    • ArcGIS JavaScript 3.15+ and 4.0 APIs
  • ArcGIS Pro 1.3 needed for packing tiles for offline vector tile implementations

With these details now listed out, we hope the process for choosing vector maps over other layer types becomes a bit easier. Keep monitoring the Esri blog series supporting vector basemaps, Lastly, please do check out our Vector Basemap gallery, All the vector basemaps there are ready for use and can be plugged into existing Web Maps or put into a custom application.  Happy mapping!

About the Author
Marketing and technology entrepreneur for the Esri Startup Program. A global program that helps software startups succeed by giving them free three year access to Esri's ArcGIS online services, software development tools, ready-to-use content, training, technical support, global partnership opportunities, and co-marketing to help entrepreneurs starting technology product businesses with a mapping and location component. I build relationships and business with startups, Esri Partners, customers, accelerators and incubators to help them grow, thrive, and leverage the Esri ArcGIS Platform.