I tried using the same feature layer even without omitting the TimeExtent property on my map but removing the timeslider and it works. But as soon as i add the timeslider it goes back to being slow again. Here is the code i am using
<esri:Map x:Name="MyMap" TimeExtent="{Binding ElementName=MyTimeSlider, Path=Value}">
<esri:FeatureLayer ID="MyFeatureLayer" Initialized="MyFeatureLayer_Initialized" Url="...../TemporalData/MapServer/0"/>
</esri:Map>
<esri:TimeSlider x:Name="MyTimeSlider" TimeMode="TimeExtent"
MinimumValue="{Binding ElementName=MyMap, Path=Layers[MyFeatureLayer].TimeExtent.Start, Mode=OneWay}"
MaximumValue="{Binding ElementName=MyMap, Path=Layers[MyFeatureLayer].TimeExtent.End, Mode=OneWay}"
Value="{Binding ElementName=MyMap, Path=Layers[MyFeatureLayer].TimeExtent, Mode=OneWay}" >
</esri:TimeSlider>
private void MyFeatureLayer_Initialized(object sender, EventArgs e)
{
List<DateTime> intervals = new List<DateTime>();
DateTime dt = MyTimeSlider.MinimumValue;
while (dt < MyTimeSlider.MaximumValue)
{
intervals.Add(dt);
dt = dt.AddYears(1);
}
MyTimeSlider.Intervals = intervals;
}
MyTimeSlider.Intervals = TimeSlider.CreateTimeStopsByCount(MyMap.TimeExtent, 8); MyTimeSlider.Intervals = TimeSlider.CreateTimeStopsByTimeInterval(MyMap.TimeExtent, TimeSpan.FromDays(365));
xmlns:esri="http://schemas.esri.com/arcgis/client/2009"> <Grid x:Name="LayoutRoot"> <esri:Map x:Name="MyMap" WrapAround="True" TimeExtent="{Binding ElementName=MyTimeSlider, Path=Value}" Extent="-179.984, -62.877, 179.1, 70.78"> <esri:FeatureLayer ID="EarthquakesLayer" Initialized="FeatureLayer_Initialized" Url="http://sampleserver3.arcgisonline.com/ArcGIS/rest/services/Earthquakes/Since_1970/MapServer/0"/> </esri:Map> <esri:TimeSlider x:Name="MyTimeSlider" HorizontalAlignment="Center" VerticalAlignment="Top" Height="20" TimeMode="TimeExtent" MinimumValue="{Binding ElementName=MyMap, Path=Layers[EarthquakesLayer].TimeExtent.Start, Mode=OneWay}" MaximumValue="{Binding ElementName=MyMap, Path=Layers[EarthquakesLayer].TimeExtent.End, Mode=OneWay}" Value="{Binding ElementName=MyMap, Path=Layers[EarthquakesLayer].TimeExtent, Mode=OneWay}" > </esri:TimeSlider> </Grid> </UserControl> private void FeatureLayer_Initialized(object sender, EventArgs e) { MyTimeSlider.Intervals = TimeSlider.CreateTimeStopsByTimeInterval(MyMap.TimeExtent, TimeSpan.FromDays(365)); }
I have another data point on this. I have a project with several thousand multipatches, each with a time extent. On my newer computer (specs below) I can slidt the timeslider back and forth smoothly. On my old alienware laptop the lag is a couple of MINUTES!
Specs:
Newer DELL XPS Tower
Processor: Core i7-6700, 24g ram,
Video Nvidia Gforce GT-730 (2gb video ram) everything is smooth.
Old Alienware Laptop, which has
Processor an older core-7 running at 1.87ghz, and 8 gigs of Ram
Video: GTX-260m with 1gb vram