private static void Initialize2DUI(ScientificVisual3DControl scientificVisual3DControl) { SceneElement parent = scientificVisual3DControl.UIScene.SceneContainer; SimpleUIAxis uiAxis = new SimpleUIAxis( AnchorStyles.Left | AnchorStyles.Bottom, new Padding(10, 0, 0, 20), new Size(40, 40)) { Name = "UI: Axis", }; uiAxis.RectDirection = ERectDirection.XZ; parent.AddChild(uiAxis); scientificVisual3DControl.uiAxis = uiAxis; SimpleUIColorIndicator uiColorIndicator = new SimpleUIColorIndicator( AnchorStyles.Left | AnchorStyles.Bottom | AnchorStyles.Right, new Padding(80, 0, 80, 40), new Size(100, 15)) { Name = "UI: Color Indicator", }; ColorIndicatorData rainbow = ColorIndicatorDataFactory.CreateRainbow(); uiColorIndicator.Data = rainbow; parent.AddChild(uiColorIndicator); scientificVisual3DControl.uiColorIndicator = uiColorIndicator; }
internal static void InitializeUIScene(ScientificVisual3DControl scientificVisual3DControl) { if (scientificVisual3DControl == null) { return; } ColorCodedPickingScene UIScene = new ColorCodedPickingScene(); SceneElement root = UIScene.SceneContainer; UIScene.IsClear = false; root.Name = "UI Scene's container"; root.Children.Clear(); root.Effects.Clear(); UIScene.OpenGL = scientificVisual3DControl.OpenGL; scientificVisual3DControl.UIScene = UIScene; Initialize2DUI(scientificVisual3DControl); InitializeUISceneAttributes(root); SetSceneCameraToUICamera(scientificVisual3DControl); UIScene.RenderBoundingVolumes = false; }
internal static void InitializeScene(ScientificVisual3DControl scientificVisual3DControl) { if (scientificVisual3DControl == null) { return; } ColorCodedPickingScene scene = scientificVisual3DControl.Scene; scene.SceneContainer.Name = "Scene's container"; scene.SceneContainer.Children.Clear(); scene.SceneContainer.Effects.Clear(); SceneElement root = scene.SceneContainer; InitializeSceneAttributes(root); scene.RenderBoundingVolumes = false; //SceneElement scientificModelElementRoot = new SceneElement() //{ Name = "Scientific Model Elements' root" }; //scene.SceneContainer.AddChild(scientificModelElementRoot); //scientificVisual3DControl.scientificModelElementRoot = scientificModelElementRoot; ModelContainer container = new ModelContainer() { Name = "model space's container which contains models as children." }; scene.SceneContainer.AddChild(container); scientificVisual3DControl.modelContainer = container; scientificVisual3DControl.CameraRotation = new SatelliteRotation(); }
internal static void SetSceneCameraToUICamera(ScientificVisual3DControl scientificVisual3DControl) { ScientificCamera camera = scientificVisual3DControl.Scene.CurrentCamera; if (camera == null) { throw new Exception("this.Scene.CurrentCamera cannot be null."); } scientificVisual3DControl.UIScene.CurrentCamera = camera; scientificVisual3DControl.uiAxis.Camera = camera; scientificVisual3DControl.CameraRotation.Camera = camera; }