Initial Commit

This commit is contained in:
Rick Rongen
2018-02-21 09:40:31 +01:00
commit f203f3c86f
25 changed files with 2539 additions and 0 deletions

44
UseCases/Actor.cs Normal file
View File

@@ -0,0 +1,44 @@
using System.Drawing;
namespace UseCases
{
public class Actor : IDrawable
{
/// <summary>
/// Create new Actor
/// </summary>
/// <param name="name">Name of Actor</param>
/// <param name="position">Position of actor on screen</param>
public Actor(string name, Point position)
{
Name = name;
Position = position;
}
/// <inheritdoc />
public void Draw(Graphics g, Font font, Pen pen)
{
//calculate size
var size = g.MeasureString(Name, font);
//draw poppet
g.DrawEllipse(pen,
new RectangleF(Utils.TranslatePointF(Position, -10f, -10f - 20f), new SizeF(20f, 20f)));
g.DrawLine(pen, Utils.TranslatePointF(Position, 0f, -10f),
Utils.TranslatePointF(Position, 0f, 10f));
g.DrawLine(pen, Utils.TranslatePointF(Position, -5f, -5f),
Utils.TranslatePointF(Position, 5f, -5f));
g.DrawLine(pen, Utils.TranslatePointF(Position, 0f, 10f),
Utils.TranslatePointF(Position, -5f, 20f));
g.DrawLine(pen, Utils.TranslatePointF(Position, 0f, 10f),
Utils.TranslatePointF(Position, 5f, 20f));
//draw text
g.DrawString(Name, font, Brushes.Black,
Utils.TranslatePointF(Position, size.Width / -2f, size.Height / -2f + 35f));
}
/// <inheritdoc />
public string Name { get; set; }
/// <inheritdoc />
public Point Position { get; set; }
}
}