Prepare a scene for Indoor Viewer

Available with the ArcGIS Indoors Maps extension.

You can optionally create a 3D scene to use in Indoor Viewer for exploration and navigation.

There are two methods of creating a 3D scene that conforms to the Indoors model:

  1. Converting the indoor layers used in the 2D map to multipatches in ArcGIS Pro by setting the relative elevation of the units and details, and converting the facility polygon to a textured facade.
  2. Using the Import BIM to Indoor Dataset tool to import a subset of 3D features from a Revit model into an Indoor 3D dataset created using the Create Indoor 3D Dataset tool.

Note:

Indoor Viewer only supports 3D mode if an accompanying web map has already been published. For this reason, the stand-alone tables do not need to be published with the web scene.

Create a 3D scene by using a Revit model

You can use the Create Indoor 3D Dataset tool to create a dataset and run the Import BIM To Indoor Dataset tool to import a subset of a Revit model into the Indoors model. After importing data to the Indoor 3D Dataset, you can optionally append additional data from the Revit model or your 2D datasets.

Complete the following to prepare a scene for Indoor Viewer using data imported from a Revit model:

  1. Start ArcGIS Pro and open the project that contains your Indoors workspace.
  2. On the Insert tab, click the New Map drop-down arrow, and click New Global Scene.
  3. Add the Levels layer and any other 2D layers you want to include.
  4. Note:

    If you already published a web map for use in Indoor Viewer, you can add these layers from the published feature service.

  5. Add the following 3D features to the scene: Facilities 3D, Units 3D, and Details 3D.
  6. Note:

    If the Revit model contains multiple design options for exterior features, or exterior features were not attributed as exterior in the Revit model, the Facilities 3D feature may not meet your requirements. If so, you can use the rule package detailed below to create a facility shell.

  7. Configure the symbology for the 3D layers.
    1. Optionally, enable edge rendering for the Details 3D and Facilities 3D layers by choosing White (use textures) with Edges for the layer in the Symbology pane.
  8. Configure the scene as floor aware.
  9. If the coordinate system of your data is not in metric units, project the data into a coordinate system in metric units by doing the following:
    1. Run the Project tool to project the horizontal coordinate system into a metric coordinate system such as Web Mercator (Auxiliary sphere).
    2. Run the Adjust 3D Z tool with the Adjust Z-value set to 0 and convert the units of the vertical coordinate system from Feet to Meters.
  10. Configure the Units 3D, Details 3D, and any additional layers with indoor features as floor aware.
  11. Rename the Facilities 3D layer to Facilities or Facilities_Textured.

Create a 3D scene by converting 2D features to 3D features

Complete these steps before preparing units for 3D:

  1. Start ArcGIS Pro and open the project that contains the 2D map you prepared for use in Viewer.
  2. On the Insert tab, click the New Map drop-down arrow, and click New Global Scene.
  3. Copy all the layers, with the exception of the basemap and stand-alone tables, from the completed 2D indoor map and paste them into the scene you just created.
  4. Configure the scene as floor aware.

    As you configure symbology for the scene, you can use the floor filter to switch between sites, facilities, and levels.

    Note:

    Scenes must be floor aware to be used in the Viewer app.

  5. Run the Create Indoor 3D Dataset tool to create a 3D dataset in the Indoors geodatabase.

    The output dataset should have the same spatial reference as the existing Indoors feature dataset.

  6. In the Contents pane of the scene, turn off the Elevation Surfaces layer by unchecking the check box for the WorldElevation3D/Terrain3D layer.

Prepare units for 3D

Complete the following steps to prepare units for 3D:

  1. Right-click the Units layer and click Properties.

    The Layer Properties dialog box appears.

  2. On the Elevation tab, set the Features are parameter to At an absolute height.
  3. Set the Additional feature elevation using parameter to the Geometry z-values option.
  4. Set the Cartographic offset parameter to 0.5 and set the Vertical units to Meters.
    Configure the elevation of features on the Layer Properties dialog box.
  5. On the Definition Query tab, set a definition query to Where Use Type does not Include the value(s) and specify field values that represent stairway or elevator units.
  6. Click Apply.
  7. Click OK.
  8. Run the Layer 3D To Feature Class tool:
    1. For the Input Feature Layer parameter, choose the Units layer.
    2. For the Output Feature Class parameter, name it Units_Multipatch and place it in the Indoor 3D feature dataset.

      The name of the units layer in the web scene must be either Units 3D or Units. The output feature class for this step can have a different name, but the scene layer for units must have a valid name.

    3. Click Run.
  9. Remove the Units 3D or Units layer from the scene.
  10. Run the Append tool:
    1. For the Input Datasets parameter, choose the Units_Multipatch layer.
    2. For the Target Dataset parameter, choose the Units 3D layer.
    3. For the Field Matching Type parameter, choose the Use the field map to reconcile field differences option.
    4. Verify that the following fields are mapped for the Field Map parameter: UNIT_ID, USE_TYPE, NAME, NAME_LONG, LEVEL_ID, and AREA_GROSS.

      You can map additional fields if they already exist in the Units3D feature class.

    5. Click Run.
  11. Remove the Units_Multipatch layer from the scene.
  12. Set the Floors property to LEVEL_ID to make the Units 3D layer floor aware.
  13. Enable pop-ups for the Units 3D layer.

    The configured pop-ups should include all available attributes.

Prepare details for 3D

Complete the following steps to prepare details for 3D:

  1. Right-click the Details layer and click Properties.

    The Layer Properties dialog box appears.

  2. On the Elevation tab, set the Features are parameter to At an absolute height.
  3. Set the Additional feature elevation using parameter to the Geometry z-values option.
  4. Set the Cartographic offset parameter to 0.5 meters.
  5. On the Definition Query tab, set a definition query to Where Use Type includes the value(s) and specify field values that represent detail features you want to be visible as extruded features in the scene, such as walls, doors, windows, and columns.
    Note:

    Elevators, stairs, and annotation features should not be included.

  6. Click Apply.
  7. Click OK to close the Layer Properties dialog box.
  8. Set the extrusion on the Details layer.
    1. On the Feature Layer tab, in the Extrusion group, choose the Min Height option Min Height for the Feature Extrusion Type parameter.
    2. Click the Extrusion Expression button Extrusion expression.

      The Expression Builder dialog box appears.

    3. Type the height that you want to extrude features at in the Expression text box, and click OK.

      It is recommended that you extrude features to about 50 percent of the height of the level. This allows you to visualize the details on a level without the view of interior details being obstructed by walls that are the full height of a level.

    4. Set the Unit parameter to the appropriate unit of measure.
  9. Run the Layer 3D To Feature Class tool:
    1. For the Input Feature Layer parameter, choose the Details layer.
    2. For the Output Feature Class parameter, name it Details_Multipatch and place it in the Indoor3D feature dataset.
  10. Remove the Details line layer from the scene.
    Note:

    Leave only the Details_Multipatch and the Details 3D layers.

Separate details

You can separate details into multiple feature classes for more control over visualization. You can separate walls, doors, windows, and other detail features into different layers and use different symbology for each.

Complete the following steps to separate details for walls, doors, windows, and other detail features into four separate feature classes:

Note:

If you choose not to separate detail features into multiple 3D feature classes, you can run the Append tool to append detail features from the Details_Multipatch layer to the Details 3D layer using a query to include all the detail features you want to visualize as 3D.

  1. Run the Append tool.
    1. For the Input Datasets parameter, choose the Details_Multipatch layer.
    2. For the Expression parameter, set a query to Where Use Type Includes the value(s) and specify any field values that represent (nonglass) walls or columns.
    3. For the Target Dataset parameter, choose the Walls 3D layer.
    4. For the Field Matching Type parameter, choose the Use the field map to reconcile field differences option.

      The field map appears with the LEVEL_ID field already mapped. Include the following additional mappings:

      1. Map the WALL_ID field to the DETAIL_ID field.
      2. Map the WALL_TYPE field to the USE_TYPE field.

      You can map additional fields if they already exist in the Walls3D feature class.

    5. Click Run.
  2. Set the Walls 3D layer's Floors property to the Level ID field to make it floor aware.
  3. Repeat steps 1 and 2 for the Details_Multipatch layer to separate details for doors. Set the expression to include USE_TYPE field values that apply to doors and choose the Doors 3D layer as the target dataset.
  4. Repeat steps 1 and 2 for the Details_Multipatch layer to separate details for windows. Set the expression to include USE_TYPE field values that apply to windows and choose the Windows 3D layer as the target dataset.
  5. Repeat steps 1 and 2 for the Details_Multipatch layer to separate details for any additional features you want to visualize in the 3D scene. Set the expression to include USE_TYPE field values that represent these features and choose Details 3D layer as the target dataset.
  6. Optionally, change the transparency of the doors and windows features:
    1. Select the layer for which you want to update the transparency.
    2. On the Feature layer contextual tab, in the Effects group, set the Transparency parameter to 70%.
  7. Remove the Details_Multipatch layer and any unused 3D layers from the scene before publishing.

Convert a facilities polygon to a 3D facade

Complete the following steps to convert a facility polygon to a 3D textured facade:

  1. Right-click the Facilities layer and click Properties.

    The Layer Properties dialog box appears.

  2. On the Elevation tab, set the Features are parameter to At an absolute height.
  3. Set the Additional feature elevation using parameter to the Geometry z-values option.
  4. Set the Cartographic offset parameter to 0.5 meters and click OK.
  5. Click the symbol for the Facilities layer in the Contents pane to open the Symbology pane.

    The Format Polygon Symbol pane appears.

  6. Click the Properties tab.
  7. Click the Layers button Layers and choose Procedural fill.
    Stroke and fill settings in the Properties tab of the Format Polygon Symbol pane
  8. Click Rule to assign a procedural rule package (*.rpk) and choose the Indoors_TexturedFacade.rpk file in the Symbology folder that is included in the Indoors product data download.
    Note:

    You can use your own rule package or textured multipatch building models for a more customized look and feel. The provided sample rule uses the Relative Height and Levels Above Ground attributes to create a simple 3D textured facade, split by floor.

    The procedural fill parameters appear. Hover over each parameter for information on how the value will change the look of your finished building facade.

    In the Attributes section in the Format Polygon Symbol pane, the HEIGHT_RELATIVE and LEVELS_ABOVE_GROUND attributes are read directly from the Facilities polygon, as indicated by the blue database connection symbols:

    Attributes section of the Format Polygon Symbol pane

  9. The Display Options section allows you to customize your roof, wall, and window styles and textures.

  10. Click Apply after each Procedural fill parameter change to show the result in the scene.
  11. In the Geometry Options section, use the options to simplify the polygon, buffer it slightly, or alter the window size.
  12. Click Apply to create the final 3D textured facade model.
  13. Run the Layer 3D To Feature Class tool:
    1. For the Input Feature Layer parameter, choose the Facilities layer.
    2. For the Output Feature Class parameter, name it Facilities_Multipatch and place it in the Indoor3D feature dataset.

      The Facilities_Multipatch layer is added to the scene.

  14. Run the Append tool:
    1. For the Input Datasets parameter, choose the Facilities_Multipatch layer.
    2. For the Target Dataset parameter, choose the Facilities 3D layer.
    3. For the Field Matching Type parameter, choose the Use the field map to reconcile field differences option.
    4. Verify that the following fields are mapped for the Field Map parameter: FACILITY_ID, NAME, NAME_LONG, and SITE_ID.

      You can map additional fields if they already exist in the Facilities3D feature class.

    5. Click Run.
  15. Rename the Facilities 3D layer to one of the following:
    • Facilities
    • Facilities Textured
    • Facilities3D
    • Facilities 3D

    Note:
    The name of the Facilities 3D layer in your web scene must match one of the above options.

  16. Remove the Facilities polygon layer and the Facilities_Multipatch layer from the scene.
  17. Enable pop-ups for the Facilities Textured layer.

    The configured pop-ups should include all available attributes.

  18. Set the Indoor Layers properties for the scene to make the scene floor aware.
    1. Choose Facilities Textured for the Facilities parameter.
    2. Choose Levels for the Floors parameter.

Enable edge rendering (optional)

Indoors units and walls can sometimes appear washed out when viewed in ArcGIS Pro or as published scene layers. To enhance the edges and contrast of multipatch features, you can choose to enable edge rendering.

  1. For the 3D layers containing details and units features, expand the layers if necessary in the Contents pane and click the white symbol to open the Format Mesh Symbol pane.
  2. Click the Gallery tab and choose White (use textures) with Edges.

You can now share your scene to your ArcGIS organization for use in the Viewer app.