Skip To Content

Prepare a map for Indoor Viewer

Available for an ArcGIS organization licensed with the Indoors extension.

The Indoor Viewer app is configured to use a web map that contains either map image layers or feature layers. Maps that support Indoors, whether map image layers, feature layers, or mobile map packages, have layer requirements for feature classes in the Indoors geodatabase to support the apps and their functionality. These layers must conform to the ArcGIS Indoors Information Model, and are created and curated using ArcGIS Pro.

Before you prepare a map and share it to your ArcGIS organization for use in the Viewer app, you must create Indoors data that conforms to the Indoors model. This includes creating an Indoors database, loading data into the database, and optionally creating an indoor routable network in ArcGIS Pro.

Required data layers

Indoor Viewer requires a map with the following layers:

Note:

The layer names must match those listed below.

  • Levels—Corresponds to the Levels feature class in the Indoors model.
  • Facilities—Corresponds to the Facilities feature class in the Indoors model.
    Note:

    This layer must be drawn on top of other indoor map layers to facilitate the 2D campus navigation experience in Viewer.

Core functionality in Indoor Viewer is enabled by including the following layers in the map:

Note:

The layer names must match those listed below.

  • Events—Corresponds to the Events feature class in the Indoors model.
  • People—Corresponds to the Occupants feature class in the Indoors model.
  • Details—Corresponds to the Details feature class in the Indoors model.
  • Units—Corresponds to the Units feature class in the Indoors model.

You can configure additional features that you want to interact with in the Viewer app as categories using the Create Indoors Category or Create Default Indoors Categories tools. These features can be points or polygons, and require layers to be added that reference one of the following:

  • The PointsOfInterest feature class in the Indoors geodatabase
  • A feature layer that is Indoors compliant

Tip:

You can filter these features. For example, if you want to have a layer for exits, you can filter them from the PointsOfInterest feature class.

Be sure to apply the appropriate definition query to these layers. For example, if adding a layer for Places + Things, update the definition query to CATEGORY_TYPE="Places + Things".

Note:

The number of related items that are displayed for a feature in the info panel in the Viewer app is limited to the maximum number of features per layer. You can set this amount using the Maximum records returned by server parameter. This is important when displaying related items for a large feature such as a building.

Prepare the map

After creating your indoor data and optionally configuring categories, launch actions, or a routable network, you can create a map to share to your ArcGIS organization for use in the Viewer app. The Viewer web map needs to contain all of the required map image layers and feature layers.

Note:

When creating your indoor data, you can use an Indoors geodatabase (created using the Create Indoors Database tool) or an indoor dataset (created using the Create Indoor Dataset tool). An Indoors geodatabase contains all the required attributes and tables for mapping floor plans, space planning, routing, and workspace reservations, while the indoor dataset includes a simplified schema that is best suited for basic floor plan mapping.

Complete these steps to create a map and prepare it for use by Indoor Viewer:

  1. Start ArcGIS Pro.
  2. Sign in to your ArcGIS organization.
  3. Create a new project and add a connection to your Indoors geodatabase or open an existing project that contains your Indoors geodatabase.
  4. If necessary, click the Insert tab and click the New Map button New Map to create a map.
  5. Add the following layers to the map and set the visibility as follows:

    Layer nameRequiredLayer visibility (recommended)

    Facilities

    Yes

    On

    Note:

    The Facilities layer is particularly important in Viewer. Its position in the table of contents, visibility, and symbology determines visibility of other layers in your map. To show the floor plans of all buildings, you can turn off the visibility or set the transparency on the Facilities layer. In this scenario, the ground floor of all unselected buildings is shown on the map at all times. The visible level in the selected building is set by the floor picker. If layers are drawn below the Facilities layer in the table of contents, only the features on the currently visible levels are shown. If layers are drawn above the Facilities layer, they are shown for all levels on unselected buildings.

    Events

    No

    Off

    People

    No

    Off

    <Category source layers>

    No

    Off

    Details

    No

    On

    Units

    No

    On

    Levels

    Yes

    On

    Note:
    • Depending on your organization, you can have several feature layers containing category features.
    • If you want to be able to identify features in the app, but don't need the explore or search experience and don't need to route to them, add these features to the map as basic layers (points, lines, polygons, or multipatch 3D features). You also need to configure pop-ups for them in a later step.
    • Indoor Viewer supports adding additional feature layers to your web map. Customization to display name, symbology, or other layer properties made in ArcGIS Pro for work order layers in Indoor Viewer are not available to mobile users. If you are using a feature layer for work orders that require customization in both Indoor Viewer and mobile apps, consider making these changes in the shared layer so that users of the web and mobile apps have a similar experience.
    • You can include optional tables in your map at this time:
      • If you plan to use settings in the IndoorsConfig table, include the table in your map.
      • If you are using the Indoor Space Planner app to assign occupants to spaces, include the Areas table. This is necessary for displaying occupant's hotel or hot desk assignments in the info panel.
  6. Optionally, configure the map as floor aware if you're going to share to ArcGIS Online.
  7. Optionally, configure additional layers as floor aware if you're going to share to ArcGIS Online.
  8. Set the layers' visible scale range as necessary.
  9. Set the layers' symbology properties according to the following:

    Details and Units layers

    Set according to the USE_TYPE attribute.

    <Category source> layers

    Set according to the CATEGORY_SUBTYPE attribute.

    People and Events layers

    Use an empty point symbol (no color or outline, and size 1).

    Note:

    Use caution when applying symbols for category layers that have dense coverage. For example, offices are symbolized by the color of the unit polygon and shouldn't have individual point symbols.

  10. Turn on labeling for Units (NAME attribute), People (KNOWNAS attribute), and any additional features that require a label.

    You can configure labels so that occupied office units display the occupant's name and unoccupied offices display the unit's name to visually identify which offices are vacant or available to assign in the app. To hide the unit name label for occupied offices, configure labels for the units layer as follows:

    1. Right-click the Units layer in the Contents pane and click Labeling Properties.

      The Label Class pane appears.

    2. Click the SQL query button SQL Query and click New expression.
    3. Create the following expression:
      Where Assignment Type is not equal to office
    4. Click Apply.

    Occupant labels may sometimes overlap with labels for adjacent units, which results in missing labels in the app. To avoid overlapping labels, you can stack occupant labels using an Arcade expression by completing the following:

    1. Right-click the People layer in the Contents pane and click Labeling Properties.

      The Label Class pane appears.

    2. Click the Label expression button Label expression and create the following Arcade expression:
      Replace($feature.KNOWNAS, ' ', TextFormatting.NewLine)
    3. Click Apply.
  11. Set the display field in the layer properties for People, if present, to KNOWNAS and all other map layers to NAME.
    Note:

    The Viewer app uses the display field value for labeling certain items in the app, such as the info panel title. Setting this in ArcGIS Pro now will help avoid confusion for app users.

  12. Enable pop-ups for any additional layers you may want to identify on the map.

    Configure pop-ups for layers that you want to interact with on the map in Viewer. These basic layers don't support the explore or search experience, and action buttons, such as Directions, are not available.

  13. Ensure that the map has a coordinate system set for Current XY, such as WGS 1984 Web Mercator auxiliary sphere, and Current Z, such as WGS 1984.
  14. Optionally, rename the map to make it easily identifiable and complete all metadata fields.
  15. Set the display extent of the map to display all of the map data.
  16. If enabled, disable the range slider in the map.
    Caution:

    This is important. An enabled range slider can prevent data from being shared to Indoors web apps.

  17. Add any Esri-hosted or custom basemap services to the map.
    Note:

    Configure a basemap to choose between an Esri-hosted basemap or a custom vector tile package basemap.

  18. Clear all feature selections.

Your map is now ready to publish and share as a web map to your ArcGIS organization.

You can further configure your map in ArcGIS Pro to configure a basemap, publish category features as a feature layer, or enable additional app functionalities such as searchable events, work orders, device location and tracking, hotel booking, app launch actions, and routing barriers. You can also use your Viewer map to create a 3D scene in ArcGIS Pro for use in the Viewer app.

Configure a basemap

A basemap is an important part of an indoor map that provides context and perspective for what's nearby. Keep in mind the large scale of your map when choosing what basemap to use. Unlike image tile basemaps, vector tile basemaps are smaller and support higher levels of detail.

Depending on your organization's needs, you can use one of the online basemap services hosted by Esri or author a custom basemap. The following sections provide the necessary steps to configure a basemap for Indoors.

Use an Esri-hosted basemap

In ArcGIS Pro, you can add basemaps from the Basemap gallery in the Layer group on the Map tab. Depending on how your active portal is configured, the gallery can include the default Esri basemaps, maps shared to your organization's basemap gallery group, and basemaps you added to your project in ArcGIS Pro.

You can also add Esri vector basemaps to your map by completing the following steps:

  1. Copy the URL for the vector basemap you want to add.
  2. Click the Add Data drop-down arrow in the Layer group.
  3. Choose the Data From Path option.

    The Add Data From Path dialog box appears.

  4. Paste the URL.
  5. Click Add.

Use a custom basemap hosted on your Enterprise portal

To use a custom basemap hosted on your Enterprise portal, complete these steps:

  1. Author a custom basemap.
  2. Create a vector tile package using the Create Vector Tile Package tool.

    When you run the Create Vector Tile Package tool, make the following adjustments to provide support for an indoor level of detail and scale the tile down by a factor of 17:

    1. Uncheck the Package for ArcGIS Online | Bing Maps | Google Maps check box.
    2. Choose the VectorBasemapTilingScheme.xml file included in the Indoors symbology resources, for the Tiling scheme parameter.
  3. Share the vector tile package to your Enterprise portal.
  4. Sign in to your Enterprise portal in your browser and publish your vector tile package as a hosted layer.
  5. Add the Enterprise portal items to your map in ArcGIS Pro.
    Tip:

    Alternatively, if you have the hosted tile layer URL, you can copy and paste it into the Add Data From Path dialog box by clicking the Add Data drop-down arrow in the Layer group and choosing Data From Path.