public IFinalVisualizer GetFinalVisualizer(ICostReviewer storage)
        {
            var costVisualizationSize = parameters.CostVisualizationSize;
            var totalSize             = new Point(Math.Max(getParticleVisualizationSize().X, costVisualizationSize.X),
                                                  getParticleVisualizationSize().Y + costVisualizationSize.Y);
            var videoMaker = new VideoMaker(getMainPath() + "MergedPictures\\", getMainPath() + "FinalVideo\\",
                                            parameters.VideoName + ".avi", totalSize);
            var accumAllToOneCost = new AccumCostReviewer(new SingleCoreCostReviewer(storage));
            var finalVis          = new FinalVisualizer(videoMaker, parameters.SnapTime,
                                                        new CostPrinter(getMainPath() + "CostPrints\\", accumAllToOneCost, "FINAL"));

            return(finalVis);
        }
        public IStepVisualizer GetStepVisualizer(ICostReviewer storage)
        {
            var picturePartMakers     = new List <PicturePartMaker>();
            var costVisualizationSize = parameters.CostVisualizationSize;
            var costVisualizer        = new CostVisualizer(storage, costVisualizationSize, parameters.CostName);

            picturePartMakers.Add(new PicturePartMaker()
            {
                StartCoordinates = new Point(0, 0),
                StepDrawer       =
                    (int i) =>
                {
                    return
                    ((Bitmap)
                     Image.FromFile(getMainPath() + "ParticlePictures\\" + i + ".jpg"));
                }
            });
            picturePartMakers.Add(new PicturePartMaker()
            {
                StartCoordinates =
                    new Point(0, getParticleVisualizationSize().Y),
                StepDrawer = costVisualizer.GetCostOfStep
            });
            var totalSize = new Point(Math.Max(getParticleVisualizationSize().X, costVisualizationSize.X),
                                      getParticleVisualizationSize().Y + costVisualizationSize.Y);
            var pictureMerger   = new PictureMerger(getMainPath() + "MergedPictures\\", picturePartMakers, totalSize);
            var daPictureOutput = new CombinedPictureVisualizer(getMainPath() + "ParticlePictures\\",
                                                                getParticleVisualizationSize().Y, getParticleVisualizationSize().X)
            {
                Visualizers =
                    parameters
                    .ParticleSubVisualizers
            };
            var mergedPicViz = new MergedPictureVisualizer(pictureMerger, daPictureOutput, parameters.SnapTime);
            var costPrinter  = new CostPrinter(getMainPath() + "CostPrints\\", storage, "");

            return(new StepVisualizer(costPrinter, mergedPicViz));
        }
 public AccumCostReviewer(ICostReviewer storage)
 {
     this.storage = storage;
 }
Exemplo n.º 4
0
 public MaxStepCostCalculator(ICostReviewer decoReviewer)
 {
     this.decoReviewer = decoReviewer;
 }
Exemplo n.º 5
0
 public CostPrinter(string printPath, ICostReviewer storage, string commonFileName)
 {
     this.printPath      = printPath;
     this.storage        = storage;
     this.commonFileName = commonFileName;
 }
Exemplo n.º 6
0
 public CostVisualizer(ICostReviewer showStorage, Point size, string name)
 {
     this.showStorage = showStorage;
     this.size        = size;
     this.name        = name;
 }
Exemplo n.º 7
0
 public FinalReviewCostStorage()
 {
     smStorage       = new SmallCostStorage();
     maxStepCostCalc = new MaxStepCostCalculator(smStorage);
 }
Exemplo n.º 8
0
 public SingleCoreCostReviewer(ICostReviewer decoCostStorage)
 {
     this.decoCostStorage = decoCostStorage;
 }