writeStream method

void writeStream(
  1. Geometry geom,
  2. List<int> os,
  3. bool isFirst
)

Writes a {@link Geometry} to an {@link OutStream}.

@param geom the geometry to write @param os the out stream to write to @throws IOException if an I/O error occurs

Implementation

void writeStream(Geometry geom, List<int> os, bool isFirst) {
  if (doSpatialite && !isFirst) {
    byteArrayOutStream.add(0x69);
  }
  if (geom is Point)
    writePoint(geom, os);
  // LinearRings will be written as LineStrings
  else if (geom is LineString)
    writeLineString(geom, os);
  else if (geom is Polygon)
    writePolygon(geom, os);
  else if (geom is MultiPoint)
    writeGeometryCollection(WKBConstants.wkbMultiPoint, geom, os);
  else if (geom is MultiLineString)
    writeGeometryCollection(WKBConstants.wkbMultiLineString, geom, os);
  else if (geom is MultiPolygon)
    writeGeometryCollection(WKBConstants.wkbMultiPolygon, geom, os);
  else if (geom is GeometryCollection)
    writeGeometryCollection(WKBConstants.wkbGeometryCollection, geom, os);
  else {
    Assert.shouldNeverReachHere("Unknown Geometry type");
  }
}