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