/// <summary>
 /// Helper method for Clone (actual implementation)
 /// </summary>
 /// <param name="a"></param>
 /// <param name="b"></param>
 protected void DoClone(LogAxis b, LogAxis a)
 {
     Axis.DoClone(b, a);
     // add specific elemtents of the class for the deep copy of the object
     a.numberSmallTicks_ = b.numberSmallTicks_;
     a.largeTickValue_   = b.largeTickValue_;
     a.largeTickStep_    = b.largeTickStep_;
 }
        /// <summary>
        /// Deep Copy of the LogAxis
        /// </summary>
        /// <returns>A Copy of the LogAxis Class</returns>
        public override object Clone()
        {
            LogAxis a = new LogAxis();

            if (GetType() != a.GetType())
            {
                throw new System.Exception("Clone not defined in derived type. Help!");
            }
            DoClone(this, a);
            return(a);
        }