38 lines
1.5 KiB
C#
38 lines
1.5 KiB
C#
using System;
|
|
|
|
namespace VisionCommon {
|
|
public class LayoutRecipe : ICloneCopy<LayoutRecipe> {
|
|
public CoordSystem MotorDirection { get; set; } = new CoordSystem();
|
|
public CoordSystem AlignMotorDirection { get; set; } = new CoordSystem();
|
|
public bool IsAlignMotor { get; set; } = false;
|
|
public eMoveObject MoveObjectTypeX { get; set; } = new eMoveObject();
|
|
public eMoveObject MoveObjectTypeY { get; set; } = new eMoveObject();
|
|
public eMoveObject AlignMoveObjectTypeX { get; set; } = new eMoveObject();
|
|
public eMoveObject AlignMoveObjectTypeY { get; set; } = new eMoveObject();
|
|
|
|
public LayoutRecipe Clone() {
|
|
return ((ICloneable)this).Clone() as LayoutRecipe;
|
|
}
|
|
|
|
object ICloneable.Clone() {
|
|
var cloneObj = new LayoutRecipe();
|
|
CopyTo(cloneObj);
|
|
return cloneObj;
|
|
}
|
|
|
|
public void CopyTo(LayoutRecipe target) {
|
|
target.MotorDirection = this.MotorDirection.Clone() as CoordSystem;
|
|
target.AlignMotorDirection = this.AlignMotorDirection.Clone() as CoordSystem;
|
|
target.IsAlignMotor = this.IsAlignMotor;
|
|
target.MoveObjectTypeX = this.MoveObjectTypeX;
|
|
target.MoveObjectTypeY = this.MoveObjectTypeY;
|
|
target.AlignMoveObjectTypeX = this.AlignMoveObjectTypeX;
|
|
target.AlignMoveObjectTypeY = this.AlignMoveObjectTypeY;
|
|
}
|
|
}
|
|
|
|
public enum eMoveObject {
|
|
StaticMove, CamMove
|
|
}
|
|
}
|