Пример #1
0
        public static Zcorn Read(BinaryReader reader)
        {
            byte version = reader.ReadByte();

            switch (version)
            {
            case Version0:
            {
                int icount = reader.ReadInt32();
                int jcount = reader.ReadInt32();
                int kcount = reader.ReadInt32();
                ZcornItem[,,] items = new ZcornItem[icount, jcount, kcount];
                for (int i = 0; i < icount; ++i)
                {
                    for (int j = 0; j < jcount; ++j)
                    {
                        for (int k = 0; k < kcount; ++k)
                        {
                            items[i, j, k] = ZcornItem.Read(reader);
                        }
                    }
                }
                return(new Zcorn(items));
            }

            default:
                return(new Zcorn());
            }
        }
Пример #2
0
 void Init(int nx, int ny, int nz)
 {
     Items = new ZcornItem[nx, ny, nz];
     for (int k = 0; k < nz; ++k)
     {
         for (int j = 0; j < ny; ++j)
         {
             for (int i = 0; i < nx; ++i)
             {
                 Items[i, j, k] = new ZcornItem();
             }
         }
     }
 }
Пример #3
0
        public Zcorn(int nx, int ny, int nz, double zSize, double depth)
        {
            Init(nx, ny, nz);
            double z = depth;

            for (int k = 0; k < nz; ++k)
            {
                double zTop    = z;
                double zBottom = z + zSize;
                for (int j = 0; j < ny; ++j)
                {
                    for (int i = 0; i < nx; ++i)
                    {
                        Items[i, j, k] = new ZcornItem(zTop, zTop, zTop, zTop, zBottom, zBottom, zBottom, zBottom);
                    }
                }
                z += zSize;
            }
        }