public override object GetDeepCopy()
        {
            IController clone = new UIScaleSineLerpController("clone - " + this.ID,                                           //deep
                                                              this.ControllerType,                                            //deep
                                                              (TrigonometricParameters)this.trigonometricParameters.Clone()); //deep

            clone.SetControllerPlayStatus(this.PlayStatusType);

            return(clone);
        }
        public override bool Equals(object obj)
        {
            UIScaleSineLerpController other = obj as UIScaleSineLerpController;

            if (other == null)
            {
                return(false);
            }
            else if (this == other)
            {
                return(true);
            }

            return(this.trigonometricParameters.Equals(other.TrigonometricParameters) &&
                   base.Equals(obj));
        }