CircleTool.cs 930 B

123456789101112131415161718192021222324252627
  1. using PixiEditor.Models.Layers;
  2. using PixiEditor.Models.Position;
  3. using System.Windows.Media;
  4. using System.Windows.Media.Imaging;
  5. namespace PixiEditor.Models.Tools.Tools
  6. {
  7. public class CircleTool : ShapeTool
  8. {
  9. public override ToolType ToolType => ToolType.Circle;
  10. public override BitmapPixelChanges Use(Layer layer, Coordinates[] coordinates, Color color, int toolSize)
  11. {
  12. CreateCircle(layer, coordinates[0], color, toolSize);
  13. return new BitmapPixelChanges();
  14. }
  15. public void CreateCircle(Layer layer, Coordinates coordinates, Color color, int size)
  16. {
  17. DoubleCords calculatedCords = CalculateCoordinatesForShapeRotation(coordinates);
  18. layer.LayerBitmap.DrawEllipse(calculatedCords.Coords1.X, calculatedCords.Coords1.Y, calculatedCords.Coords2.X,
  19. calculatedCords.Coords2.Y, color);
  20. }
  21. }
  22. }