コード例 #1
0
ファイル: SpriteModelBase.cs プロジェクト: VOChris/VOStudios
        protected CroppedBitmap[] GetSpriteSources(String source, Int32 rows, Int32 columns)
        {
            var sourceImage = ImageUtility.InitializeBitmapSourceFromLocation(source);

            var sourceWidth = sourceImage.PixelWidth / columns;
            var sourceHeight = sourceImage.PixelHeight / rows;

            var sources = new CroppedBitmap[rows * columns];
            for (Int32 index = 0; index < sources.Count(); index++)
            {
                var xPosition = (index % columns) * sourceWidth;
                var yPosition = (index / columns) * sourceHeight;

                var croppedBitmap = new CroppedBitmap();
                croppedBitmap.BeginInit();
                croppedBitmap.Source = sourceImage;
                croppedBitmap.SourceRect = new Int32Rect(xPosition, yPosition, sourceWidth, sourceHeight);
                croppedBitmap.EndInit();
                sources[index] = croppedBitmap;
            }

            return sources;
        }