private void RotateImages(RotateMode mode) { var logo = LoadImage("GcLogo"); if (logo == null) { return; } // Each turn over _items .ForEach(x => { if (mode != RotateMode.None) { if (mode == RotateMode.Left) { x.Position = x.Position == 0 ? 3 : x.Position - 1; } if (mode == RotateMode.Right) { x.Position = x.Position == 3 ? 0 : x.Position + 1; } } var rotateOption = (TransformOptions)Enum.ToObject(typeof(TransformOptions), x.Position); var sourceBitmap = logo; var transform = new FlipRotator(rotateOption); var destBitmap = sourceBitmap.Transform(transform); x.Box.Image = destBitmap.ToGdiBitmap(); }); }
public void Rotate(int delta) { var rotateOption = (TransformOptions)Enum.ToObject(typeof(TransformOptions), delta); var transform = new FlipRotator(rotateOption); Bitmap = Bitmap.Transform(transform); Image = Bitmap.ToGdiBitmap(); }