public void UpdateGridZoom(ref List <IData3DCollection> _datasets, float zoom)
        {
            IData3DCollection grid = _datasets.SingleOrDefault(s => s.Name == "gridNormal");

            if (grid != null)
            {
                LineDataCollection ldc = grid as LineDataCollection;
                var   colour           = CoarseGridLines;
                float LODfade          = (float)Math.Max(Math.Min((zoom / 0.1 - 1.0) / 5.0, 1.0), 0.5);
                ldc.Color = Color.FromArgb((int)(colour.R * LODfade), (int)(colour.G * LODfade), (int)(colour.B * LODfade));
                //Console.WriteLine("LOD {0} fade {1} Color {2}", ldc.Name, LODfade, ldc.Color);
            }
        }
        public void UpdateGridCoordZoom(ref List <IData3DCollection> _datasets, float zoom)
        {
            IData3DCollection gridLOD2 = _datasets.SingleOrDefault(s => s.Name == "text bitmap LOD2");

            if (gridLOD2 != null)
            {
                TexturedQuadDataCollection tqdc = gridLOD2 as TexturedQuadDataCollection;

                float LODfade = (float)Math.Max(Math.Min((0.2 / zoom - 1.0) / 2.0, 1.0), 0.0);
                Color calpha  = Color.FromArgb((int)(255 * LODfade), Color.White);

                tqdc.SetColour(calpha);
                //Console.WriteLine("LOD {0} fade {1} Color {2}", tqdc.Name, LODfade, calpha);
            }
        }