public AlgorithmsSettings GetAlgorithmsSettings(string[] args) { var setting = default(AlgorithmsSettings); Parser.Default.ParseArguments <Options>(args) .WithParsed(o => { setting = new AlgorithmsSettings(o.Cenrings); }); return(setting); }
private static IContainer Register(WordSetting wordSetting, ImageSetting imageSetting, AlgorithmsSettings algorithmsSettings, string path) { var builder = new ContainerBuilder(); builder.RegisterType <BasicWordsSelector>().As <IWordsSelector>(); builder.RegisterType <WordReaderFromFile>().As <IWordReader>(); builder.RegisterInstance(wordSetting).As <WordSetting>(); builder.RegisterInstance(algorithmsSettings).As <AlgorithmsSettings>(); builder.RegisterInstance(imageSetting).As <ImageSetting>(); builder.RegisterInstance(path).As <string>(); builder.RegisterType <CloudDrawer>().As <IDrawer>(); builder.Register(c => { var setting = c.Resolve <ImageSetting>(); return(new CircularCloudLayouter(new Point(setting.Width / 2, setting.Height / 2))); }).As <ICloudLayouter>(); builder.RegisterType <Compositor>().As <Compositor>(); builder.RegisterType <ImageCreator>().As <ImageCreator>(); return(builder.Build()); }
public Compositor(IWordsSelector wordSelector, ICloudLayouter layouter, AlgorithmsSettings settings) { this.wordSelector = wordSelector; this.layouter = layouter; this.settings = settings; }