private void InitVariableLayers()
        {
            LayerGroup  lyrGrp = null;
            VectorLayer lyr    = null;

            // group layer with single target + labels
            lyrGrp = new LayerGroup("Fast Boats Group");
            lyr    = CreateGeometryFeatureProviderLayer("Fast Boats", new[] {
                new System.Data.DataColumn("Name", typeof(string)),
                new System.Data.DataColumn("Heading", typeof(float)),
                new System.Data.DataColumn("Scale", typeof(float)),
                new System.Data.DataColumn("ARGB", typeof(int))
            });
            lyr.Style.PointColor = new SolidBrush(Color.Green);
            _fastBoats           = new MovingObjects(50, 50, lyr, this.mb.Map, 0.8f, Color.Green);
            _fastBoats.AddObject("Fast 1", GetRectangleCenter(MapDecorationAnchor.LeftTop));
            InitRasterPointSymbolizer(lyr, 0);
            lyrGrp.Layers.Add(lyr);
            lyrGrp.Layers.Add(CreateLabelLayer(lyr, "Name", false));
            this.mb.Map.VariableLayers.Add(lyrGrp);

            // group layer with multiple targets + labels
            lyrGrp = new LayerGroup("Medium Boats Group");
            lyr    = CreateGeometryFeatureProviderLayer("Medium Boats", new[] {
                new System.Data.DataColumn("Name", typeof(string)),
                new System.Data.DataColumn("Heading", typeof(float)),
                new System.Data.DataColumn("Scale", typeof(float)),
                new System.Data.DataColumn("ARGB", typeof(int))
            });
            lyr.Style.PointColor = new SolidBrush(Color.Yellow);
            _mediumBoats         = new MovingObjects(500, 100, lyr, this.mb.Map, 1, Color.Yellow);
            _mediumBoats.AddObject("Boat 1", GetRectangleCenter(MapDecorationAnchor.RightTop));
            _mediumBoats.AddObject("Boat 2", GetRectangleCenter(MapDecorationAnchor.RightCenter));
            InitRasterPointSymbolizer(lyr, 1);
            lyrGrp.Layers.Add(lyr);
            lyrGrp.Layers.Add(CreateLabelLayer(lyr, "Name", false));
            this.mb.Map.VariableLayers.Add(lyrGrp);

            // group layer with multiple targets + labels
            lyrGrp = new LayerGroup("Slow Boats Group");
            lyr    = CreateGeometryFeatureProviderLayer("Slow Boats", new[] {
                new System.Data.DataColumn("Name", typeof(string)),
                new System.Data.DataColumn("Heading", typeof(float)),
                new System.Data.DataColumn("Scale", typeof(float)),
                new System.Data.DataColumn("ARGB", typeof(int))
            });
            // raster point symbolizer
            lyr.Style.PointColor = new SolidBrush(Color.Red);
            _slowBoats           = new MovingObjects(2000, 100, lyr, this.mb.Map, 1.2f, Color.Red);
            _slowBoats.AddObject("Slow 1", GetRectangleCenter(MapDecorationAnchor.LeftBottom));
            _slowBoats.AddObject("Slow 2", GetRectangleCenter(MapDecorationAnchor.CenterBottom));
            _slowBoats.AddObject("Slow 3", GetRectangleCenter(MapDecorationAnchor.RightBottom));
            InitRasterPointSymbolizer(lyr, 1);
            lyrGrp.Layers.Add(lyr);
            lyrGrp.Layers.Add(CreateLabelLayer(lyr, "Name", true));
            this.mb.Map.VariableLayers.Add(lyrGrp);
        }