示例#1
0
        public ImprovedTextBlockVisual3D()
        {
            InitializeComponent();

            var rnd = new Random();

            _randomIndexes = Enumerable.Range(0, 10).OrderBy(n => rnd.Next(100)).ToArray(); // randomize an array of 10 integers

            _wpfTestScene = new TestScene(WpfViewport3D, isInDXEngine: false);
            _wpfTestScene.CreatesTestScene(_randomIndexes);

            _dxTestScene = new TestScene(DXViewport3D, isInDXEngine: true);
            _dxTestScene.CreatesTestScene(_randomIndexes);

            var alphaClipThreshold = (AlphaClipCheckBox.IsChecked ?? false) ? UsedAlphaClipThreshold : 0f;

            _dxTestScene.SetDXEngineSettings(UseSolidColorEffectCheckBox.IsChecked ?? false, alphaClipThreshold);


            CopyWpfCamera(); // Copy settings from WpfCamera to DXCamera

            WpfCamera.StartRotation(20, 0);

            this.Unloaded += (sender, args) => MainDXViewportView.Dispose();
        }
示例#2
0
        internal FormCamera(IObjectLabel label, WpfCamera camera)
            : this()
        {
            this.LoadControlResources();
            this.label = label;
            UpdateFormUI();
            this.camera = camera;
            toolStripTextBoxFieldOfView.Text       = camera.FieldOfView + "";
            toolStripTextBoxNearPlaneDistance.Text = camera.NearPlaneDistance + "";
            toolStripTextBoxFarPlaneDistance.Text  = camera.FarPlaneDistance + "";
            toolStripTextBoxScale.Text             = camera.Scale + "";
            Motion6D.Interfaces.ILinear6DForecast forecast = camera;
            toolStripTextBoxCoordinateError.Text = forecast.CoordinateError + "";
            toolStripTextBoxAngleError.Text      = (forecast.AngleError * 180 / Math.PI) + "";
            toolStripTextBoxForecatTime.Text     = forecast.ForecastTime.TotalSeconds + "";
            Action <object, Action> act = (object o, Action a) =>
            {
                userControlCameraForm.InvokeIfNeeded(a);
            };

            camera.Set(userControlCameraForm.Control, userControlCameraForm, act);
            userControlCameraForm.CameraBackground = camera.CameraBackground;
        }