コード例 #1
0
        public void UseSource(object source)
        {
            Source = source as MandelbrotRenderer;

            Iterations.Text = Source.Iterations.ToString();
            Extent.Text     = Source.Extent.ToString();
            BatchSize.Text  = Source.BatchSize.ToString();
        }
コード例 #2
0
        public MandelbrotViewModel()
        {
            _mRenderer    = new MandelbrotRenderer(RenderWidth, RenderHeight);
            CurrentBitmap = new WriteableBitmap(RenderWidth, RenderHeight, 96 * DpiScale, 96 * DpiScale,
                                                PixelFormats.Bgra32, null);
            var pixels = from x in Enumerable.Range(0, RenderWidth * RenderHeight)
                         from x2 in new byte[] { 0x00, 0xFF, 0x00, 0xFF }
            select x2;
            var    pixelArray = pixels.ToArray();

            CurrentBitmap.WritePixels(new Int32Rect(0, 0, RenderWidth, RenderHeight), pixelArray, RenderWidth * 4, 0);
            StatusText = "Ready";
            LeftEdge   = -2;
            BottomEdge = -1;
            RightEdge  = 1;
            UpperEdge  = 1;

            RenderCommand          = new RelayCommand(async o => await ExecuteRender(), o => CanRender());
            ResetEverythingCommand = new RelayCommand(async o => await ResetEverything(), o => CanRender());
            ResetViewCommand       = new RelayCommand(async o => await ResetView(), o => CanRender());
        }