/// <summary>
        /// Create RenderingContext From ViewerConfig
        /// </summary>
        /// <param name="viewerConfig"></param>
        /// <returns></returns>
        public static RenderingContext From(GLViewerConfig viewerConfig)
        {
            RenderingContext ret = RenderingContext.Default();

            ret.Lightning           = viewerConfig.Lightning;
            ret.UseNormal           = true;
            ret.Wireframe           = viewerConfig.Wireframe;
            ret.UseObjectColor      = viewerConfig.ShowSceneColor;
            ret.DefaultFaceMaterial = GLConfig.Material(viewerConfig.DefaultMaterial);
            ret.DefaultLineMaterial = GLConfig.Material("Black plastic");

            return(ret);
        }
		/// <summary>
		/// Create RenderingContext From ViewerConfig
		/// </summary>
		/// <param name="viewerConfig"></param>
		/// <returns></returns>
		public static RenderingContext From(GLViewerConfig viewerConfig)
		{
			RenderingContext ret = RenderingContext.Default();

			ret.Lightning = viewerConfig.Lightning;
			ret.UseNormal = true;
			ret.Wireframe = viewerConfig.Wireframe;
			ret.UseObjectColor = viewerConfig.ShowSceneColor;
			ret.DefaultFaceMaterial = GLConfig.Material(viewerConfig.DefaultMaterial);
			ret.DefaultLineMaterial = GLConfig.Material("Black plastic");

			return ret;
		}
		/// <summary>
		/// Default ctor
		/// </summary>
		public Scene3DControl()
		{
			InitializeComponent();
			Scene = new Scene3D();
			Drag = new DragBallNavigator(this);
			ViewerConfig = new GLViewerConfig();
			ViewerConfig.LoadDefault();
		}
		private void pictureBox4_Click(object sender, EventArgs e)
		{
			GLViewerConfigForm dlg = new GLViewerConfigForm();
			Point p = HomeButton.PointToScreen(new Point(HomeButton.Width, 0));
			dlg.Location = p;
			dlg.Config = this.ViewerConfig;
			if (dlg.ShowDialog() == DialogResult.OK)
			{
				this.ViewerConfig = dlg.Config;
				this.ViewerConfig.SaveDefault();
				Refresh();
			}

		}