コード例 #1
0
ファイル: BoundingBox.cs プロジェクト: Tylland/altidude
 public void Save(ShpWriter writer)
 {
     writer.Write(_xMin);
     writer.Write(_yMin);
     writer.Write(_xMax);
     writer.Write(_yMax);
 }
コード例 #2
0
        public void SaveIndex(string path)
        {
            int fileLength = Header.FileLength;

            try
            {
                Header.FileLength = 50 + _shapes.Count * 4;

                using (FileStream stream = File.OpenWrite(path))
                {
                    using (ShpWriter writer = new ShpWriter(stream))
                    {
                        Header.Save(writer);

                        int offset = 50;
                        foreach (Shape shape in _shapes)
                        {
                            new IndexRecord(offset, shape.Header.Length).Save(writer);
                            offset += 4 + shape.Header.Length;
                        }
                    }
                }
            }
            finally
            {
                Header.FileLength = fileLength;
            }
        }
コード例 #3
0
        public override void Save(ShpWriter writer)
        {
            base.Save(writer);

            writer.Write(_shapeType);

            _box.Save(writer);

            writer.Write(_numParts);
            writer.Write(_numPoints);
            writer.Write(_parts);
            writer.Write(_points);
        }
コード例 #4
0
ファイル: FileHeader.cs プロジェクト: Tylland/altidude
 public void Save(ShpWriter writer)
 {
     writer.WriteBigEndian(_fileCode);
     writer.WriteBigEndian(_unused1);
     writer.WriteBigEndian(_unused2);
     writer.WriteBigEndian(_unused3);
     writer.WriteBigEndian(_unused4);
     writer.WriteBigEndian(_unused5);
     writer.WriteBigEndian(_fileLength);
     writer.Write(_version);
     writer.Write(_shapeType);
     writer.Write(_xMin);
     writer.Write(_yMin);
     writer.Write(_xMax);
     writer.Write(_yMax);
     writer.Write(_zMin);
     writer.Write(_zMax);
     writer.Write(_mMin);
     writer.Write(_mMax);
 }
コード例 #5
0
        public void Save(string path)
        {
            Header.FileLength = GetFileLength();

            using (FileStream stream = File.OpenWrite(path))
            {
                using (ShpWriter writer = new ShpWriter(stream))
                {
                    Header.Save(writer);

                    int number = 1;
                    foreach (Shape shape in _shapes)
                    {
                        shape.Header.Number = number;
                        shape.Save(writer);
                        number++;
                    }
                }
            }
        }
コード例 #6
0
 public void Save(ShpWriter writer)
 {
     writer.WriteBigEndian(_offset);
     writer.WriteBigEndian(_length);
 }
コード例 #7
0
ファイル: Shape.cs プロジェクト: Tylland/altidude
 public virtual void Save(ShpWriter writer)
 {
     _header.Length = GetContentLength();
     _header.Save(writer);
 }
コード例 #8
0
 public void Save(ShpWriter writer)
 {
     writer.WriteBigEndian(_number);
     writer.WriteBigEndian(_length);
 }