Esempio n. 1
0
        private void toolStripRenderer_SelectedIndexChanged(object sender, EventArgs e)
        {
            RenderType   renderType   = this.toolStripRenderer.SelectedItem != null ? (RenderType)this.toolStripRenderer.SelectedItem : RenderType.RayTracer;
            StrategyType strategyType = this.toolStripStrategy.SelectedItem != null ? (StrategyType)this.toolStripStrategy.SelectedItem : StrategyType.Progressive;

            RenderStrategy strategy = new ProgressiveRenderStrategy();

            switch (strategyType)
            {
            case StrategyType.Scanline:
                strategy = new ScanlineRenderStrategy();
                break;

            case StrategyType.Progressive:
                strategy = new ProgressiveRenderStrategy();
                break;
            }
            switch (renderType)
            {
            case RenderType.RayTracer:
                this.tracer = new RayTracer(UnifiedScenesRepository.Scenes[this.TabText], strategy);
                break;

            case RenderType.PhotonTracer:
                this.tracer = new PhotonTracer(UnifiedScenesRepository.Scenes[this.TabText], strategy, 500000);
                break;

            case RenderType.DistributedRayTracer:
                this.tracer = new DistributedRayTracer(UnifiedScenesRepository.Scenes[this.TabText], strategy);
                break;
            }
        }
Esempio n. 2
0
        private void toolStripRenderer_SelectedIndexChanged(object sender, EventArgs e)
        {
            RenderType renderType = this.toolStripRenderer.SelectedItem != null ? (RenderType)this.toolStripRenderer.SelectedItem : RenderType.RayTracer;
            StrategyType strategyType = this.toolStripStrategy.SelectedItem != null ? (StrategyType)this.toolStripStrategy.SelectedItem : StrategyType.Progressive;

            RenderStrategy strategy = new ProgressiveRenderStrategy();
            switch (strategyType)
            {
                case StrategyType.Scanline:
                    strategy = new ScanlineRenderStrategy();
                    break;
                case StrategyType.Progressive:
                    strategy = new ProgressiveRenderStrategy();
                    break;
            }
            switch (renderType)
            {
                case RenderType.RayTracer:
                    this.tracer = new RayTracer(UnifiedScenesRepository.Scenes[this.TabText], strategy);
                    break;
                case RenderType.PhotonTracer:
                    this.tracer = new PhotonTracer(UnifiedScenesRepository.Scenes[this.TabText], strategy, 500000);
                    break;
                case RenderType.DistributedRayTracer:
                    this.tracer = new DistributedRayTracer(UnifiedScenesRepository.Scenes[this.TabText], strategy);
                    break;
            }
        }