ARUP.IssueTracker.Classes.IfcGuid.ToIfcGuid C# (CSharp) Метод

ToIfcGuid() публичный статический Метод

Conversion of a GUID to a string representing the GUID
public static ToIfcGuid ( System.Guid guid ) : string
guid System.Guid The GUID to convert
Результат string
    public static string ToIfcGuid( Guid guid )
    {
      uint[] num = new uint[6];
      char[] str = new char[22];
      int i, n;
      byte[] b = guid.ToByteArray();

      // Creation of six 32 Bit integers from the components of the GUID structure
      num[0] = ( uint ) ( BitConverter.ToUInt32( b, 0 ) / 16777216 );
      num[1] = ( uint ) ( BitConverter.ToUInt32( b, 0 ) % 16777216 );
      num[2] = ( uint ) ( BitConverter.ToUInt16( b, 4 ) * 256 + BitConverter.ToInt16( b, 6 ) / 256 );
      num[3] = ( uint ) ( ( BitConverter.ToUInt16( b, 6 ) % 256 ) * 65536 + b[8] * 256 + b[9] );
      num[4] = ( uint ) ( b[10] * 65536 + b[11] * 256 + b[12] );
      num[5] = ( uint ) ( b[13] * 65536 + b[14] * 256 + b[15] );

      // Conversion of the numbers into a system using a base of 64
      n = 2;
      int pos = 0;
      for( i = 0; i < 6; i++ )
      {
        cv_to_64( num[i], ref str, pos, n );
        pos += n; n = 4;
      }
      return new String( str );
    }
    #endregion // Conversion Methods