Added Files

This commit is contained in:
2025-10-27 18:48:23 -04:00
commit ab916dc82a
89 changed files with 7575 additions and 0 deletions

View File

@@ -0,0 +1,74 @@
namespace PepLib.Codes
{
public class CircularMove : Motion
{
public CircularMove()
{
}
public CircularMove(Vector endPoint, Vector centerPoint, RotationType rotation = RotationType.CCW)
{
EndPoint = endPoint;
CenterPoint = centerPoint;
Rotation = rotation;
}
public CircularMove(double x, double y, double i, double j, RotationType rotation = RotationType.CCW)
{
EndPoint = new Vector(x, y);
CenterPoint = new Vector(i, j);
Rotation = rotation;
}
public RotationType Rotation { get; set; }
public EntityType Type { get; set; }
public Vector CenterPoint { get; set; }
public override void Rotate(double angle)
{
base.Rotate(angle);
CenterPoint = CenterPoint.Rotate(angle);
}
public override void Rotate(double angle, Vector origin)
{
base.Rotate(angle, origin);
CenterPoint = CenterPoint.Rotate(angle, origin);
}
public override void Offset(double x, double y)
{
base.Offset(x, y);
CenterPoint = new Vector(CenterPoint.X + x, CenterPoint.Y + y);
}
public override void Offset(Vector voffset)
{
base.Offset(voffset);
CenterPoint += voffset;
}
public override CodeType CodeType()
{
return Codes.CodeType.CircularMove;
}
public override ICode Clone()
{
return new CircularMove(EndPoint, CenterPoint, Rotation)
{
Type = Type
};
}
public override string ToString()
{
return Rotation == RotationType.CW ?
string.Format("G02 X{0} Y{1} I{2} J{3}", EndPoint.X, EndPoint.Y, CenterPoint.X, CenterPoint.Y) :
string.Format("G03 X{0} Y{1} I{2} J{3}", EndPoint.X, EndPoint.Y, CenterPoint.X, CenterPoint.Y);
}
}
}