Add a tracking layer (shapefile) to the active map.
[C#]
/// <summary>
/// Add a tracking layer (shapefile) to the active map.
/// </summary>
/// <param name="map"></param>
/// <param name="string_ShapefileDirectory">A System.String that is the directory location where a shapefiel is located. Example: "D:\arcgis\ArcTutor\Tracking_Analyst\Simple"</param>
/// <param name="string_TemporalFieldName">A System.String that is the TemporalFieldName. Example: "TA_DATE"</param>
/// <param name="string_TemporalObjectColumnName">A System.String that is the TemporalObjectColumnName. Example: "EVENTID"</param>
/// <remarks></remarks>
public void AddTrackingLayerToMap(ESRI.ArcGIS.Carto.IMap map, System.String string_ShapefileDirectory, System.String string_TemporalFieldName, System.String string_TemporalObjectColumnName)
{
if (map == null)
{
return;
}
ESRI.ArcGIS.TrackingAnalyst.ITemporalRenderer temporalRenderer = new ESRI.ArcGIS.TrackingAnalyst.CoTrackSymbologyRendererClass();
// Get the hurricane feature class from the shape file
ESRI.ArcGIS.Geodatabase.IWorkspaceFactory workspaceFactory = new ESRI.ArcGIS.DataSourcesFile.ShapefileWorkspaceFactoryClass();
ESRI.ArcGIS.Geodatabase.IWorkspace workspace = workspaceFactory.OpenFromFile(string_ShapefileDirectory, 0);
ESRI.ArcGIS.Geodatabase.IEnumDataset enumDataset = workspace.get_Datasets(ESRI.ArcGIS.Geodatabase.esriDatasetType.esriDTAny);
ESRI.ArcGIS.Geodatabase.IFeatureClass featureClass = (ESRI.ArcGIS.Geodatabase.IFeatureClass)(enumDataset.Next());
// Create a tracking layer
ESRI.ArcGIS.TrackingAnalyst.ITemporalLayer temporalLayer = new ESRI.ArcGIS.TrackingAnalyst.TemporalFeatureLayerClass();
ESRI.ArcGIS.Carto.ILayer layer = (ESRI.ArcGIS.Carto.ILayer)temporalLayer;
ESRI.ArcGIS.Carto.IFeatureLayer featureLayer = (ESRI.ArcGIS.Carto.IFeatureLayer)layer;
// Set the temporal column and event id column
// Note: Set up the renderer before adding to layer
temporalRenderer.TemporalFieldName = string_TemporalFieldName;
temporalRenderer.TemporalObjectColumnName = string_TemporalObjectColumnName;
temporalLayer.Renderer = (ESRI.ArcGIS.Carto.IFeatureRenderer)temporalRenderer;
// Set the data
featureLayer.FeatureClass = featureClass;
// Add layer to map
map.AddLayer(layer);
}
[Visual Basic .NET]
''' <summary>
''' Add a tracking layer (shapefile) to the active map.
''' </summary>
''' <param name="map"></param>
''' <param name="string_ShapefileDirectory">A System.String that is the directory location where a shapefiel is located. Example: "D:\arcgis\ArcTutor\Tracking_Analyst\Simple"</param>
''' <param name="string_TemporalFieldName">A System.String that is the TemporalFieldName. Example: "TA_DATE"</param>
''' <param name="string_TemporalObjectColumnName">A System.String that is the TemporalObjectColumnName. Example: "EVENTID"</param>
''' <remarks></remarks>
Public Sub AddTrackingLayerToMap(ByVal map As ESRI.ArcGIS.Carto.IMap, ByVal string_ShapefileDirectory As System.String, ByVal string_TemporalFieldName As System.String, ByVal string_TemporalObjectColumnName As System.String)
If map Is Nothing Then
Exit Sub
End If
Dim temporalRenderer As ESRI.ArcGIS.TrackingAnalyst.ITemporalRenderer = New ESRI.ArcGIS.TrackingAnalyst.CoTrackSymbologyRendererClass
' Get the hurricane feature class from the shape file
Dim workspaceFactory As ESRI.ArcGIS.Geodatabase.IWorkspaceFactory = New ESRI.ArcGIS.DataSourcesFile.ShapefileWorkspaceFactoryClass
Dim workspace As ESRI.ArcGIS.Geodatabase.IWorkspace = workspaceFactory.OpenFromFile(string_ShapefileDirectory, 0)
Dim enumDataset As ESRI.ArcGIS.Geodatabase.IEnumDataset = workspace.Datasets(ESRI.ArcGIS.Geodatabase.esriDatasetType.esriDTAny)
Dim featureClass As ESRI.ArcGIS.Geodatabase.IFeatureClass = CType(enumDataset.Next, ESRI.ArcGIS.Geodatabase.IFeatureClass)
' Create a tracking layer
Dim temporalLayer As ESRI.ArcGIS.TrackingAnalyst.ITemporalLayer = New ESRI.ArcGIS.TrackingAnalyst.TemporalFeatureLayerClass
Dim layer As ESRI.ArcGIS.Carto.ILayer = CType(temporalLayer, ESRI.ArcGIS.Carto.ILayer)
Dim featureLayer As ESRI.ArcGIS.Carto.IFeatureLayer = CType(layer, ESRI.ArcGIS.Carto.IFeatureLayer)
' Set the temporal column and event id column
' Note: Set up the renderer before adding to layer
temporalRenderer.TemporalFieldName = string_TemporalFieldName
temporalRenderer.TemporalObjectColumnName = string_TemporalObjectColumnName
temporalLayer.Renderer = CType(temporalRenderer, ESRI.ArcGIS.Carto.IFeatureRenderer)
' Set the data
featureLayer.FeatureClass = featureClass
' Add layer to map
map.AddLayer(layer)
End Sub