Initial Commit
This commit is contained in:
44
UseCases/Actor.cs
Normal file
44
UseCases/Actor.cs
Normal 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; }
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user