getSpatialindexGeometryWherePiece method

Future<String?> getSpatialindexGeometryWherePiece(
  1. TableName tableName,
  2. Geometry geometry
)

Implementation

Future<String?> getSpatialindexGeometryWherePiece(
    TableName tableName, Geometry geometry) async {
  GeometryColumn? gCol = await getGeometryColumnsForTable(tableName);
  if (gCol == null) {
    return null;
  }

  int srid = geometry.getSRID();
  Envelope envelopeInternal = geometry.getEnvelopeInternal();
  Polygon bounds = PostgisUtils.createPolygonFromEnvelope(envelopeInternal);
  String sql = gCol.geometryColumnName +
      " && ST_GeomFromText('" +
      bounds.toText() +
      "',$srid) AND ST_Intersects(" +
      gCol.geometryColumnName +
      ",ST_GeomFromText('" +
      geometry.toText() +
      "',$srid))";
  return sql;
}