Alta,
My evaluation has been extended, so I'm back in action. I haven't seen anything new from you, so hopefully this will still be of interest. I've extracted code from a more complicated test program to display just two layers and rotate them 5 degrees every 1 second. Both layers are in StaticOverlay, but let's see if we can get that working. The two layers are a highway and hydro. Both layers indeed rotate together. I know you had more issues, but again, one step at a time.
private void Form1_Load(object sender, EventArgs e)
{
ShapeFileFeatureLayer layer1 = new ShapeFileFeatureLayer(@"C:\_ThinkGeo Shapefiles\disp_rd_hwy.shp");
layer1.ZoomLevelSet.ZoomLevel01.DefaultLineStyle = LineStyles.Highway3;
layer1.ZoomLevelSet.ZoomLevel01.ApplyUntilZoomLevel = ApplyUntilZoomLevel.Level20;
layer1.FeatureSource.Projection = rotationProjection;
ShapeFileFeatureLayer layer2 = new ShapeFileFeatureLayer(@"C:\_ThinkGeo Shapefiles\hydro_polygons.shp");
layer2.ZoomLevelSet.ZoomLevel01.DefaultAreaStyle = AreaStyles.Water1;
layer2.ZoomLevelSet.ZoomLevel01.ApplyUntilZoomLevel = ApplyUntilZoomLevel.Level20;
layer2.FeatureSource.Projection = rotationProjection;
layer1.Open();
RectangleShape r = layer1.GetBoundingBox();
PointShape UpperLeft = r.UpperLeftPoint;
PointShape LowerRight = r.LowerRightPoint;
layer1.Close();
winformsMap1.MapUnit = GeographyUnit.Meter;
winformsMap1.StaticOverlay.Layers.Add(layer1);
winformsMap1.StaticOverlay.Layers.Add(layer2);
winformsMap1.CurrentExtent = rotationProjection.GetUpdatedExtent(new RectangleShape(UpperLeft, LowerRight));
winformsMap1.Refresh();
}
private void timer1_Tick(object sender, EventArgs e)
{
rotationProjection.Angle += 5;
winformsMap1.CurrentExtent = rotationProjection.GetUpdatedExtent(winformsMap1.CurrentExtent);
winformsMap1.Refresh();
}
Hopefully this will help,
Allen