コード例 #1
0
ファイル: Cell.cs プロジェクト: calielc/Mosaic
        public void Pick(ISaver saver, int order)
        {
            IsResolved = true;
            var choice = SelectFrame;

            double score;

            if (choice == null)
            {
                choice = _frames.OrderByDescending(frame => frame.Score).First();
                score  = choice.Score / 100d;
            }
            else
            {
                score = choice.Score;
            }

            using (var result = new LayerResult(_rect)) {
                result.Order = order;
                result.Name  = choice.Name;
                result.Score = score;
                choice.CopyTo(result);

                saver.Set(result);
            }
        }
コード例 #2
0
ファイル: Frame.cs プロジェクト: calielc/Mosaic
        public void CopyTo(LayerResult result)
        {
            int x, y;
            int posX, posY;

            for (x = 0, posX = _rect.Left; x < _rect.Width; x++, posX++)
            {
                for (y = 0, posY = _rect.Top; y < _rect.Height; y++, posY++)
                {
                    result.Set(x, y, _image.Raw[posX, posY]);
                }
            }
        }