コード例 #1
0
ファイル: Form1.cs プロジェクト: NastyaGalaeva/2kurs-c-
 private void CreateCollage(CollageSettings settings)
 {
     this.collage                   = new CollageGenerator(settings);
     collage.CreateCompleted       += this.collage_CreateCompleted;
     collage.CreateProgressChanged += this.collage_CreateProgressChanged;
     collage.CreateAsync();
 }
コード例 #2
0
ファイル: Form1.cs プロジェクト: NastyaGalaeva/2kurs-c-
        private void btnCollage_Click(object sender, EventArgs e)
        {
            if (imagesList == null || imagesList.Count == 0)
            {
                ShowInformation("Изображения не выбраны");
                return;
            }

            ShowInformation("Создается коллаж...");
            DisableControls();

            var settings =
                new CollageSettings(
                    new CollageDimensionSettings
            {
                NumberOfColumns  = Convert.ToInt32(nudColumns.Value),
                NumberOfRows     = Convert.ToInt32(nudRows.Value),
                TileHeight       = Convert.ToInt32(nudItemHeight.Value),
                TileWidth        = Convert.ToInt32(nudItemWidth.Value),
                TileScalePercent = new Percentage(Convert.ToInt32(nudScalePercent.Value))
            },
                    imagesList,
                    new DirectoryInfo(folderBrowserDialog1.SelectedPath)
                    );

            CreateCollage(settings);
        }
コード例 #3
0
        public CollageGenerator(CollageSettings settings)
        {
            if (settings == null)
            {
                throw new ArgumentNullException("settings");
            }

            this.settings        = settings;
            this.progressCounter = new ProgressCounter(settings.Dimensions.NumberOfRows, settings.Dimensions.NumberOfColumns);
            this.randomGenerator = new RandomGenerator();
            this.tileTransformer = new TileTransformer();
            this.filesEnumerator = new DateFilesEnumerator(settings.InputFiles);
            this.collageSaver    = new CollageSaver(settings.OutputDirectory);
        }