protected override void CloneInternal(AnimatGUI.Framework.DataObject doOriginal, bool bCutData, AnimatGUI.Framework.DataObject doRoot) { base.CloneInternal(doOriginal, bCutData, doRoot); DynamixelServo servo = (DynamixelServo)doOriginal; m_bResetToStartPos = servo.m_bResetToStartPos; m_bQueryMotorData = servo.m_bQueryMotorData; m_iMinPosFP = servo.m_iMinPosFP; m_iMaxPosFP = servo.m_iMaxPosFP; m_fltMinAngle = servo.m_fltMinAngle; m_fltMaxAngle = servo.m_fltMaxAngle; m_iMinVelocityFP = servo.m_iMinVelocityFP; m_iMaxVelocityFP = servo.m_iMaxVelocityFP; m_fltRPMPerFPUnit = servo.m_fltRPMPerFPUnit; m_iMinLoadFP = servo.m_iMinLoadFP; m_iMaxLoadFP = servo.m_iMaxLoadFP; m_snTranslationRange = (AnimatGUI.Framework.ScaledNumber)servo.m_snTranslationRange.Clone(this, bCutData, doRoot); m_iCWComplianceMargin = servo.m_iCWComplianceMargin; m_iCCWComplianceMargin = servo.m_iCCWComplianceMargin; m_iCWComplianceSlope = servo.m_iCWComplianceSlope; m_iCCWComplianceSlope = servo.m_iCCWComplianceSlope; m_iMaxTorque = servo.m_iMaxTorque; }
public DynamixelServo(AnimatGUI.Framework.DataObject doParent) : base(doParent) { m_strName = "Hinge Motor"; m_thDataTypes.DataTypes.Add(new AnimatGUI.DataObjects.DataType("ReadParamTime", "Read Param Time", "Seconds", "s", 0, 1)); m_thDataTypes.DataTypes.Add(new AnimatGUI.DataObjects.DataType("IOPos", "IO Position", "", "", 0, 1024)); m_thDataTypes.DataTypes.Add(new AnimatGUI.DataObjects.DataType("IOVelocity", "IO Velocity", "", "", 0, 2048)); m_snTranslationRange = new AnimatGUI.Framework.ScaledNumber(this, "TranslationRange", "meters", "m"); }