private void ConfigureConveyor(IProcessorBuilder conveyor) { conveyor.SetPixelEnergyCalculator(); conveyor.SetProcessor( context => SetImageToPictureBox(gradientPictureBox, context)); conveyor.SetPixelPathsProcessor(vertical: true); conveyor.SetProcessor( context => SetImageToPictureBox(pixelPathPictureBox, context)); conveyor.SetShortestPathFinder(vertical: true); conveyor.SetProcessor(MarkShortestPathAsRed); conveyor.SetProcessor( context => SetImageToPictureBox(shortestPathPictureBox, context)); }
public static IProcessorBuilder SetShortestPathRemover(this IProcessorBuilder builder, bool vertical) { IProcessor shortestPathRemover; if (vertical) { shortestPathRemover = new ShortestPathRemover(); } else { shortestPathRemover = new HorizontalShortestPathRemover(); } return(builder.SetProcessor(shortestPathRemover)); }
public static IProcessorBuilder SetPixelPathsProcessor(this IProcessorBuilder builder, bool vertical) { IProcessor pixelPathsProcessor; if (vertical) { pixelPathsProcessor = new PixelPathsProcessor(); } else { pixelPathsProcessor = new HorizontalPixelPathsProcessor(); } return(builder.SetProcessor(pixelPathsProcessor)); }
public static IProcessorBuilder SetPixelEnergyCalculator(this IProcessorBuilder builder) { return(builder.SetProcessor(new PixelEnergyCalculator())); }
public static IProcessorBuilder SetProcessor(this IProcessorBuilder builder, Action <ProcessingContext> processingAction) { return(builder.SetProcessor(new GenericProcessor(processingAction))); }
public static IProcessorBuilder SetJpegImageSaver(this IProcessorBuilder builder, int width, int height) { return(builder.SetProcessor(new JpegImageSaver(width, height))); }