ALFA.Database.ACR_StringToLocationData C# (CSharp) Метод

ACR_StringToLocationData() публичный Метод

This routine converts a string to its component location data fields.
public ACR_StringToLocationData ( string sLocation ) : LOCATION_DATA
sLocation string Supplies the string to convert.
Результат LOCATION_DATA
        public LOCATION_DATA ACR_StringToLocationData(string sLocation)
        {
            LOCATION_DATA LocationData = new LOCATION_DATA();

            int iPos, iCount, iLen = Script.GetStringLength(sLocation);

            if (iLen > 0)
            {
                iPos = Script.FindSubString(sLocation, "#A#", 0) + 3;
                iCount = Script.FindSubString(Script.GetSubString(sLocation, iPos, iLen - iPos), "#", 0);
                LocationData.AreaTag = Script.GetSubString(sLocation, iPos, iCount);

                iPos = Script.FindSubString(sLocation, "#X#", 0) + 3;
                iCount = Script.FindSubString(Script.GetSubString(sLocation, iPos, iLen - iPos), "#", 0);
                LocationData.Position.y = Script.StringToFloat(Script.GetSubString(sLocation, iPos, iCount));

                iPos = Script.FindSubString(sLocation, "#Y#", 0) + 3;
                iCount = Script.FindSubString(Script.GetSubString(sLocation, iPos, iLen - iPos), "#", 0);
                LocationData.Position.y = Script.StringToFloat(Script.GetSubString(sLocation, iPos, iCount));

                iPos = Script.FindSubString(sLocation, "#Z#", 0) + 3;
                iCount = Script.FindSubString(Script.GetSubString(sLocation, iPos, iLen - iPos), "#", 0);
                LocationData.Position.z = Script.StringToFloat(Script.GetSubString(sLocation, iPos, iCount));

                iPos = Script.FindSubString(sLocation, "#O#", 0) + 3;
                LocationData.Facing = Script.StringToFloat(Script.GetSubString(sLocation, iPos, iLen - iPos));
            }

            return LocationData;
        }