Esempio n. 1
0
 public void Read(BinaryReader reader)
 {
     Box[0]    = reader.ReadDouble();
     Box[1]    = reader.ReadDouble();
     Box[2]    = reader.ReadDouble();
     Box[3]    = reader.ReadDouble();
     NumPoints = reader.ReadInt32();
     Points    = new ShapePoint[NumPoints];
     for (int i = 0; i < NumPoints; i++)
     {
         ShapePoint shapePoint = new ShapePoint();
         shapePoint.Read(reader);
         Points[i] = shapePoint;
     }
 }
        internal void ReadShapes(BinaryReader reader)
        {
            while (reader.BaseStream.Length != reader.BaseStream.Position)
            {
                SwapBytes(reader.ReadInt32());
                SwapBytes(reader.ReadInt32());
                switch (reader.ReadInt32())
                {
                case 1:
                {
                    ShapePoint shapePoint = new ShapePoint();
                    shapePoint.Read(reader);
                    Points.Add(shapePoint);
                    break;
                }

                case 8:
                {
                    MultiPoint multiPoint = new MultiPoint();
                    multiPoint.Read(reader);
                    MultiPoints.Add(multiPoint);
                    break;
                }

                case 3:
                {
                    PolyLine polyLine2 = new PolyLine();
                    polyLine2.Read(reader);
                    PolyLines.Add(polyLine2);
                    break;
                }

                case 5:
                {
                    PolyLine polyLine = new PolyLine();
                    polyLine.Read(reader);
                    Polygons.Add(polyLine);
                    break;
                }
                }
            }
        }