1234567891011121314151617181920212223242526272829303132333435363738394041 |
- using System;
- using System.Collections.Generic;
- using System.Text;
- using System.Windows.Media;
- namespace PixiEditorDotNetCore3.Models.Tools
- {
- public abstract class ShapeTool : Tool
- {
- public override abstract ToolType ToolType { get; }
- public ShapeTool()
- {
- ExecutesItself = true;
- }
- public abstract override BitmapPixelChanges Use(Layer layer, Coordinates startingCoords, Color color, int toolSize);
- protected DoubleCords CalculateCoordinatesForShapeRotation(Coordinates startingCords)
- {
- Coordinates currentCoordinates = MousePositionConverter.CurrentCoordinates;
- if (startingCords.X > currentCoordinates.X && startingCords.Y > currentCoordinates.Y)
- {
- return new DoubleCords(new Coordinates(currentCoordinates.X, currentCoordinates.Y), new Coordinates(startingCords.X, startingCords.Y));
- }
- else if (startingCords.X < currentCoordinates.X && startingCords.Y < currentCoordinates.Y)
- {
- return new DoubleCords(new Coordinates(startingCords.X, startingCords.Y), new Coordinates(currentCoordinates.X, currentCoordinates.Y));
- }
- else if (startingCords.Y > currentCoordinates.Y)
- {
- return new DoubleCords(new Coordinates(startingCords.X, currentCoordinates.Y), new Coordinates(currentCoordinates.X, startingCords.Y));
- }
- else
- {
- return new DoubleCords(new Coordinates(currentCoordinates.X, startingCords.Y), new Coordinates(startingCords.X, currentCoordinates.Y));
- }
- }
- }
- }
|