Analysis on 3D network datasets
If the source features for a network dataset have a geometry that includes z-coordinate values, you can create a three-dimensional network and perform analyses on it. This topic introduces the fundamentals of performing 3D analysis with the ArcGIS Network Analyst extension and presents a geoprocessing model that you can use to interactively find the best route in ArcScene.
The Network Analyst tutorial data, which is available on ArcGIS.com, includes a 3D network dataset and a geoprocessing model for routing on the network. Studying and working with the accompanying data will help you understand how to create a 3D network and how to perform an analysis on it. Also, you'll need the data to complete some of the steps in this document. After downloading the data, you can extract it wherever you like. It may be helpful, however, to extract the data to C:\arcgis\ArcTutor since this is where tutorial data is stored by default. You can find the 3D data at \Network Analyst\Workflow\3DRouting.
![License License](rsrc/license.png)
To visualize network datasets in 3D and facilitate the creation of source features, you need the ArcGIS 3D Analyst extension and ArcGIS Network Analyst extension.
The next set of graphics shows an example of a building that has its hallways and other pedestrian pathways modeled as a network dataset.
![An ArcScene rendering of a three-story building An ArcScene rendering of a three-story building](0047/GUID-57608E76-D555-44CF-B68E-CBF2FA705D27-web.png)
First, the pathways—like hallways, staircases, elevators, and so on—need to be digitized in 3D. This can be accomplished in ArcMap and ArcScene.
![The interior pathways of the building can be digitized in 3D using ArcScene. The yellow lines represent hallways; red lines, staircases; and the vertical blue line, an elevator. The interior pathways of the building can be digitized in 3D using ArcScene. The yellow lines represent hallways; red lines, staircases; and the vertical blue line, an elevator.](0047/GUID-99831F69-4E12-41A1-8DCD-B104452DF5E3-web.png)
The next step is creating the network dataset from the source feature classes. This is similar to creating any other network dataset; however, when asked, How would you like to model the elevation of your network dataset?, choose Using Z coordinate values from Geometry:
![The New Network Dataset wizard page dedicated to modeling elevation The New Network Dataset wizard page dedicated to modeling elevation](0047/GUID-53F40F6C-3092-410D-BCFC-9AE9CC7B3071-web.png)
Learn more about connectivity using Z coordinate values from geometry
Once the 3D network dataset is created and built, you can use it to perform network analyses.
![A 3D route analysis A 3D route analysis](0047/GUID-F644ECF0-386E-4022-A54D-AFED40C8D777-web.png)
The network doesn't need to be limited to only one building. It can be expanded to include several buildings in a campus, neighborhood, or even a city. In any case, the Network Analyst solvers can help answer various questions. For example, you can use the location-allocation solver to locate limited medical supplies and equipment near people or rooms to maximize their utility. You can also locate other things, like recycling bins in an office building or restaurants and vending machines in an airport.
On a 2D network, the service area solver often helps emergency response organizations determine what buildings can be reached in a certain response time. However, reaching a point inside a building often requires walking through corridors and climbing several flights of stairs. On a 3D network, the service area solver can help determine what locations inside buildings are reachable within the specified time frame.
These are just a few examples of the sundry applications of Network Analyst solvers in 3D.
Performing an analysis on a 3D network dataset
The workflow for performing an analysis on a 3D network dataset is currently easiest to do with a geoprocessing model. This section describes how to set up a model that finds the best route between two or more stops. You can run the model in ArcScene and see the three-dimensional results. It assumes that you have a 3D network dataset (you can use the one provided), you are familiar with geoprocessing, and you do not need step-by-step instructions on how to create models.
Model overview
The geoprocessing model described here finds least-cost routes between stops. You can choose to add stops interactively or load them from a feature class. The symbology for the model's output network analysis layer is set up beforehand in a LYR file and referenced by the model.
Element |
Type |
Description |
---|---|---|
Input network dataset |
Network dataset layer, input parameter |
File path to the 3D network dataset. It must model elevation using z-coordinate values from geometry. |
Restrictions |
String, input parameter |
List of restriction attributes on the network dataset. |
Impedance attribute |
String, input parameter |
The cost attribute that the least-cost path is calculated from. |
Tool |
Creates a route analysis layer. This layer contains both data and properties that determine how the best route will be calculated, along with the results of the calculation. |
|
Route |
Network analysis layer |
Route analysis layer. |
Tool |
Adds network locations to a network analysis layer. In this case, it adds stops to the route layer. |
|
Input stops |
Feature set (points), input parameter |
Point features that are visited by the resulting route. |
Route (1) |
Network analysis layer |
Route layer with stops. |
Tool |
Calculates the least-cost route. |
|
Solve succeeded |
Boolean |
Indicates whether or not the solve operation succeeded. |
Route (2) |
Network analysis layer |
Route layer containing the resulting route. |
Output route symbology |
Layer |
The Apply Symbology From Layer tool applies this layer's symbology to the output routes layer. |
Tool |
Applies symbology from the layer referenced by the Output route symbology variable to the Output routes variable. |
|
Output routes |
Network analysis layer, derived parameter |
The route layer containing the resulting route with the predefined symbology from Output route symbology. |
![]() |
Model processes
The details about the model follow.
Make Route Layer
The Make Route Layer tool creates a new network analysis layer (Route) that stores the analysis properties, maintains a connection to the input network dataset, and stores the input stops, barriers, and output routes. The network dataset has a network impedance attribute. This attribute is a parameter, so you can set it to any impedance attribute in the network dataset. The network dataset in the example has Length and WalkTime attributes, so you can specify either the distance or time required for a pedestrian to traverse each source feature (for example, hallway, staircase, or elevator segment). Since Restrictions is a parameter, you can have the solver restrict staircases, elevators, and turns. Turn restrictions can model someone who does not have a key to a specific door.
![]() |
Add Locations
The Add Locations tool adds stops to the route analysis layer. The model is configured to allow points to be loaded from a feature class or created interactively by clicking on the map display in ArcScene. In either case, the points need to include z-coordinate values in their geometry.
When stops are added to ArcScene using this model, they will show green flags. The model retrieves this custom symbology—as well as the schema of the features—from an LYR file stored on disk. You could have the model show default point symbology instead, but you would still need the model to reference a point feature class with the proper schema for stops.
To create an LYR file from a three-dimensional point feature class, follow these steps:
- Start ArcScene by clicking Start > All Programs > ArcGIS > ArcScene 10.2.
-
Click the ArcCatalog window
button.
The Catalog window is displayed.
- Navigate to a geodatabase.
- Create a point feature class that uses z-coordinate values.
- Use the Add Field tool to create the fields for stops you might want to edit, such as Name, Sequence, and RouteName.
- Add the new feature class to ArcScene.
- Set up the symbology so that stops appear the way you want when using the model.
- Right-click the feature layer in the Table Of Contents window and choose Save As Layer File.
- Save the LYR file to the same workspace as the model.
To include the ability of adding stops interactively using the model, you need to configure the Input Locations parameter as a feature set. Although this functionality is already included in the model, the following steps are included to help you understand how this was accomplished.
- In ModelBuilder, right-click Add Locations, and in the context menu, click Make Variable > From Parameter > Input Locations.
-
Right-click the new variable, Input locations, and choose Properties.
Input locations was renamed to Input stops in the graphic of the Find best route model diagram above.
- In the Input locations Properties dialog box, click the Data Type tab.
- Click the Select data type drop-down list, then choose Feature Set.
-
Import a schema and symbology from an LYR file that defines attributes, geometry type, and symbols. If you are using default symbology, you can import the schema from a feature class.
If you create a feature class or LYR file as indicated in the previous set of steps, this is where you would configure the model to retrieve those files.
-
Click OK.
Now a user of the model will be able to interactively create stops for the route analysis.
You could introduce another Add Locations tool to the model in a similar fashion, but use it to add barriers instead of stops.
Solve
The Solve tool calculates the best route based on the options specified in the input route analysis layer and generates the route lines, which are written to the Routes sublayer in the output service area layer.
Apply Symbology From Layer
The symbology that is applied to Stops using a parameter on the Add Locations tool is temporary, since it only applies to the feature set. If the Solve tool runs without applying a symbology to the entire route analysis layer, the symbology for stop and route features will revert to default symbols. Therefore, the Apply Symbology From Layer tool is part of the model. It takes the symbology from RouteSymbology.lyr, including all sublayers, and applies it to the route analysis layer created by the model.
The following steps explain how to create an LYR file for a route analysis layer in ArcScene. Later, if you create a different model to run the service area solver in 3D, for example, you can refer to these general steps to set up its output symbology.
- In the Catalog window, click Toolboxes > System Toolboxes > Network Analyst Tools > Analysis.
-
Double-click Make Route Layer.
The Make Route Layer dialog box opens.
- Specify a network dataset in the Input analysis network text box.
-
Click OK.
ArcGIS begins creating a route analysis layer. Once complete, the analysis layer displays in the Table Of Contents window.
-
For any sublayers (Stops, Point Barriers, and Routes) that are part of your model, specify a symbology.
In this model, the symbology that was set for the Stops sublayers was imported from the same LYR file that is referenced by the parameters of the Add Locations tool. This way, stop symbology won't appear to change between adding locations and solving.
- Right-click the name of the route analysis layer in the Table Of Contents window and choose Save As Layer File.
- Specify a name and location for saving the file and click Save.
Using the model
You need the tutorial data, which is available on ArcGIS.com, to complete these steps.
- Start ArcScene by clicking Start > All Programs > ArcGIS > ArcScene 10.2.
-
In the ArcScene - Getting Started dialog box, click Existing Scenes and click Browse for more.
The Open dialog box appears.
-
Browse to the Network Analyst Workflow data ([tutorial data location]\Network Analyst\Workflow) and double-click 3DRouting > 3DRouting.sxd.
The 3DRouting project opens.
-
Enable the ArcGIS Network Analyst extension.
-
Click Customize > Extensions.
The Extensions dialog box opens.
- Check Network Analyst.
- Click Close.
-
Click Customize > Extensions.
-
Click the Catalog window button
.
The Catalog window appears.
-
Click the Home button
.
The Catalog window opens the folder that the ArcScene document is stored in.
-
Expand the toolbox 3DRoutingTools.tbx and double-click the model Find best route.
The Find best route dialog box opens.
-
Add a stop by following these substeps:
-
Click Input_stops.
-
Click the location on the map display where you want the stop to be.
-
Click Input_stops.
- Repeat the last step to create at least one more stop.
- The Input network dataset should already be pointing to the 3D-enabled network dataset, Transportation_ND. If not, you can browse to it from the 3DRouting folder (3DRouting > OfficeBuilding.gdb > Transportation > Transportation_ND.)
-
Click the Impedance attribute and choose either Length or WalkTime.
Length
For finding the shortest path
WalkTime
For finding the quickest path
-
Check any restrictions that you want the route solution to obey.
RestrictStairs
Using stairs is prohibited. This is useful when generating a route for a person who is on a wheelchair.
RestrictElevators
Using elevators is prohibited. This is useful when generating a route to a fire exit.
RestrictedTurns
The turn restrictions that are modeled on this network dataset represent doors that require a key to open. If someone doesn't have the key, they should enable this restriction.
-
Click OK.
The model calculates the best route and adds the results to the map display. The route feature is also added to the Routes feature class in the Table Of Contents.
Performing other types of network analysis in 3D
You can use the model that is presented in this topic with other 3D network datasets. You can also expand on it to include other functionality, like barriers. To perform other network analyses, like location-allocation or service area, you would need to create a separate geoprocessing model. The Find best route model would be a useful reference for such a task.