Пример #1
0
        ///// <summary>whether dblValue is in (dblbound1, dblbound2) or  (dblbound2, dblbound1) </summary>
        ///// <returns> If dblValue is in the range, return 1;
        /////                 If dblValue is on the boundary of the range, return 0
        /////                 If dblValue is outside of the boundary, return -1</returns>
        //public static int InBetween(double dblValue, double dblbound1, double dblbound2)
        //{
        //    if (dblbound1 > dblbound2)
        //    {
        //        CHelpFunc.Swap(ref dblbound1, ref dblbound2);
        //    }

        //    int intCmp1 = Compare(dblValue, dblbound1);
        //    int intCmp2 = Compare(dblValue, dblbound2);

        //    if (intCmp1 == -1 || intCmp2 == 1)
        //    {
        //        return -1;
        //    }
        //    else if (intCmp1 == 0 || intCmp2 == 0)
        //    {
        //        return 0;
        //    }
        //    else
        //    {
        //        return 1;
        //    }
        //}

        public static double SnapValueToTarget(double dblValue, double dblTarget, double dblSnapRange)
        {
            if (CCmpMethods.CmpDblRange(dblValue, dblTarget, dblSnapRange) == 0)
            {
                return(dblTarget);
            }
            else
            {
                return(dblValue);
            }
        }