/// <summary>
        ///
        /// </summary>
        /// <typeparam name="U"></typeparam>
        /// <param name="other"></param>
        /// <param name="converter"></param>
        /// <returns></returns>
        public IDWField3d <T> CreateCopy <U>(IDWField3d <U> other, Func <U, T> converter)
        {
            var result = Create(other.Power, other.Epsilon);

            result.Objects.AddRange(other.Objects.Select(obj => obj.Convert(converter)));
            return(result);
        }
        /// <summary>
        ///
        /// </summary>
        /// <param name="other"></param>
        /// <returns></returns>
        public IDWField3d <T> CreateCopy(IDWField3d <T> other)
        {
            var result = Create(other.Power, other.Epsilon);

            result.Objects.AddRange(other.Objects.Select(obj => obj.Duplicate()));
            return(result);
        }