Example #1
0
        private static EndianAwareBinaryWriter WritePosition(EndianAwareBinaryWriter writer, Position position)
        {
            writer.Write(position.Longitude);
            writer.Write(position.Latitude);

            return(writer);
        }
Example #2
0
        private static void ToBinary(EndianAwareBinaryWriter writer, MultiPolygon multiPolygon)
        {
            writer.WriteEndianness();
            writer.Write((UInt32)WkbType.MultiPolygon);
            writer.Write((UInt32)multiPolygon.Coordinates.Count());

            foreach (Polygon polygon in multiPolygon.Coordinates)
            {
                ToBinary(writer, polygon);
            }
        }
Example #3
0
        private static void ToBinary(EndianAwareBinaryWriter writer, GeometryCollection geometryCollection)
        {
            writer.WriteEndianness();
            writer.Write((UInt32)WkbType.GeometryCollection);
            writer.Write((UInt32)geometryCollection.Geometries.Count());

            foreach (Geometry geometry in geometryCollection.Geometries)
            {
                ToBinary(writer, geometry);
            }
        }
Example #4
0
        private static void ToBinary(EndianAwareBinaryWriter writer, MultiLineString multiLineString)
        {
            writer.WriteEndianness();
            writer.Write((UInt32)WkbType.MultiLineString);
            writer.Write((UInt32)multiLineString.Coordinates.Count());

            foreach (LineString lineString in multiLineString.Coordinates)
            {
                ToBinary(writer, lineString);
            }
        }
Example #5
0
        private static void ToBinary(EndianAwareBinaryWriter writer, LineString lineString)
        {
            writer.WriteEndianness();
            writer.Write((UInt32)WkbType.LineString);
            writer.Write(lineString.Coordinates.Count());

            foreach (Position pos in lineString.Coordinates)
            {
                WritePosition(writer, pos);
            }
        }
Example #6
0
        private static void ToBinary(EndianAwareBinaryWriter writer, MultiPoint multiPoint)
        {
            writer.WriteEndianness();
            writer.Write((UInt32)WkbType.MultiPoint);
            writer.Write((UInt32)multiPoint.Coordinates.Count());

            foreach (Position pos in multiPoint.Coordinates)
            {
                Point point = new Point(pos);
                ToBinary(writer, point);
            }
        }
Example #7
0
        private static void ToBinary(EndianAwareBinaryWriter writer, Polygon polygon)
        {
            writer.WriteEndianness();
            writer.Write((UInt32)WkbType.Polygon);
            writer.Write((UInt32)polygon.Coordinates.Count());

            foreach (LinearRing linearRing in polygon.Coordinates)
            {
                writer.Write((UInt32)linearRing.Coordinates.Count());

                foreach (Position pos in linearRing.Coordinates)
                {
                    WritePosition(writer, pos);
                }
            }
        }
Example #8
0
 private static void ToBinary(EndianAwareBinaryWriter writer, Point point)
 {
     writer.WriteEndianness();
     writer.Write((UInt32)WkbType.Point);
     WritePosition(writer, point.Coordinates);
 }