コード例 #1
0
        /// <summary>
        /// Convert value from a correct string.
        /// </summary>
        /// <param name="s">String to convert.</param>
        /// <param name="ret">Output value.</param>
        /// <returns>True if conversion was successful.</returns>
        public static bool FromString(string s, out RelativePosition2 ret)
        {
            ret = RelativePosition2.Zero;
            string[] parms = s.Split(new[] { listSeparator }, StringSplitOptions.None);

            if (parms.Length == 4)
            {
                float x;
                float y;
                float rx;
                float ry;

                if (FromString(parms[0], out x) &&
                    FromString(parms[1], out y) &&
                    FromString(parms[2], out rx) &&
                    FromString(parms[3], out ry)
                    )
                {
                    ret = new RelativePosition2(x, y, rx, ry);
                    return(true);
                }
            }

            return(false);
        }
コード例 #2
0
        //////////////////////////////////////////////////////////////////////////
        // RelativePosition2
        //////////////////////////////////////////////////////////////////////////

        /// <summary>
        /// Convert value to a safely formated string.
        /// </summary>
        /// <param name="v">Value to convert.</param>
        /// <returns>A string without culture variation.</returns>
        public static string ToString(RelativePosition2 v)
        {
            return
                (v.OffsetX.ToString(CultureInfo.InvariantCulture) + listSeparatorAndSpace +
                 v.OffsetY.ToString(CultureInfo.InvariantCulture) + listSeparatorAndSpace +
                 v.RelativeX.ToString(CultureInfo.InvariantCulture) + listSeparatorAndSpace +
                 v.RelativeY.ToString(CultureInfo.InvariantCulture));
        }