2026-01-26 18:56:53 +09:00

42 lines
1.6 KiB
C#

/*
* Copyright (c) 2025 LG Electronics Inc.
* SPDX-License-Identifier: LicenseRef-LGE-Proprietary
*/
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
}
}