com.esri.arcgis.geodatabase
Interface INetworkBuild

All Superinterfaces:
Serializable
All Known Implementing Classes:
INetworkBuildProxy, NetworkDataset

public interface INetworkBuild
extends Serializable

Provides access to members for changing the schema of a network dataset and building it.

Remarks

The INetworkBuild interface is used to make schema edits to the network dataset; adding or removing of sources and attributes. Schema edits to the network dataset can be made two ways; directly adding or removing sources and attributes or by editing the data element and using the UpdateSchema method. The INetworkBuild interface is also the interface to use for building the network dataset.

Geodatabase network datasets can contain any number of edge, junction and turn sources. Geodatabase network datasets also contain a system junction source which is a system managed source that is used to manage connectivity within the network dataset. Shapefile network datasets can only contain one edge source, any number of turn sources, and the system junction source.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.


Method Summary
 void addAttribute(INetworkAttribute attribute)
          Adds the given attribute to the schema of the network dataset.
 void addSource(INetworkSource source)
          Adds the given source to the schema of the network dataset.
 IEnvelope buildNetwork(IEnvelope areaToBuild)
          Builds the network dataset for the given extent.
 void deleteAttribute(INetworkAttribute attribute)
          Deletes the given attribute from the network dataset.
 void deleteSource(INetworkSource source)
          Deletes the given source from the network dataset.
 void updateSchema(IDENetworkDataset dataElement)
          Updates the schema for the network dataset based upon the given data element.
 

Method Detail

addAttribute

void addAttribute(INetworkAttribute attribute)
                  throws IOException,
                         AutomationException
Adds the given attribute to the schema of the network dataset.

Remarks

The AddAttribute method is used to add an attribute to the network dataset. After calling AddAttribute, the network needs to be rebuilt in order to reflect the change.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Parameters:
attribute - A reference to a com.esri.arcgis.geodatabase.INetworkAttribute (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

addSource

void addSource(INetworkSource source)
               throws IOException,
                      AutomationException
Adds the given source to the schema of the network dataset.

Remarks

The AddSource method is used to add a feature class to the network dataset. Depending on the source being added to the network dataset, different properties may be specified. While turn sources require no additional parameters, edge and junction sources require a connectivity policy and group and optionally can have elevation fields defined.

Object classes, tables and non-simple feature classes, such as annotation, dimension, geometric network feature classes and feature classes already in a network dataset cannot be added to a network dataset. After calling AddSource, the network needs to be rebuilt in order to reflect the change.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Parameters:
source - A reference to a com.esri.arcgis.geodatabase.INetworkSource (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

deleteAttribute

void deleteAttribute(INetworkAttribute attribute)
                     throws IOException,
                            AutomationException
Deletes the given attribute from the network dataset.

Remarks

DeleteAttribute removes the specified attribute from the network dataset. After calling DeleteAttribute, the network needs to be rebuilt.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Parameters:
attribute - A reference to a com.esri.arcgis.geodatabase.INetworkAttribute (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

deleteSource

void deleteSource(INetworkSource source)
                  throws IOException,
                         AutomationException
Deletes the given source from the network dataset.

Remarks

DeleteSource removes the specified source from the network dataset. The source will be removed from all the network attributes and directions for the network dataset. DeleteSource cannot be performed on the system junction source for the network dataset. After calling DeleteSource, the network needs to be rebuilt.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Parameters:
source - A reference to a com.esri.arcgis.geodatabase.INetworkSource (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

updateSchema

void updateSchema(IDENetworkDataset dataElement)
                  throws IOException,
                         AutomationException
Updates the schema for the network dataset based upon the given data element.

Remarks

The UpdateSchema method should be used to make multiple schema changes to a network dataset in one operation. Use the Delete and Add methods for Attributes and Sources in order to make simple schema edits.

Use IDatasetComponent::DataElement to retrieve a copy of the data element for this network dataset. Make the changes to the data element copy, then call UpdateSchema to update the network dataset. The end user is responsible for ensuring the integrity of the data element when it’s supplied to the UpdateSchema method.

Certain operations are not allowed and will return an error when performed with the UpdateSchema method, these include:

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Parameters:
dataElement - A reference to a com.esri.arcgis.geodatabase.IDENetworkDataset (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

buildNetwork

IEnvelope buildNetwork(IEnvelope areaToBuild)
                       throws IOException,
                              AutomationException
Builds the network dataset for the given extent.

Description

BuildNetwork builds the network dataset in the area specified by the areaToValidate envelope and returns the envelope of the validated area. If an empty envelope is supplied, BuildNetwork will return an empty validated area. The simplest way to build a Network Dataset is to pass in the envelope of the extent of the network dataset. Note that the network dataset must be rebuilt when edits are made to the underlying features or feature classes. Edits include:

Incremental rebuilds of the network dataset are not supported in ArcGIS 9 - the entire network must be rebuilt. If any envelope other than that of the Network Dataset extent is supplied, the entire network will still be built.

Remarks

BuildNetwork must be performed outside of an edit session on shapefile or Geodatabase network datasets. During the process, the connectivity of features will be determined based on the connectivity policy and group settings and the elevation fields. The attributes defined on the network dataset will be populated within the logical network. Solve operations can still be performed on Network Datasets that have been edited since they have been built, however, the results are not guaranteed to be correct.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Parameters:
areaToBuild - A reference to a com.esri.arcgis.geometry.IEnvelope (in)
Returns:
A reference to a com.esri.arcgis.geometry.IEnvelope
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.