GEOMESA-201 Compute geometries from Geometry Filters

* This pr makes a first pass at extracting geometries to cover from the geometry filters.
* In order to do this, various things are refactored.
* GeohashUtils.getUniqueGeohashSubstringsInPolygon is widened to accept Geometries.
   implicit class RichGeometry(val geom: Geometry) extends AnyVal {
     def bufferMeters(meters: Double): Geometry = 
geom.buffer(distanceDegrees(meters))
     def distanceDegrees(meters: Double) = 
GeometryUtils.distanceDegrees(geom.getCentroid, meters)
   }

^^^ I don't see anything terribly useful there.

On 08/12/2014 11:22 AM, jahhulbert-ccri wrote:
>
> In geomesa-core/src/main/scala/geomesa/core/index/IndexQueryPlanner.scala:
>
> > @@ -404,9 +435,11 @@ case class IndexQueryPlanner(keyPlanner: KeyPlanner,
> >            configureSpatioTemporalIntersectingIterator(ofilter, featureType, isDensity)
> >        }
> >
> > +    val goodPoly = if(poly == null) null else poly.getEnvelope.asInstanceOf[Polygon]
>
> yeah that's prob it...RichGeometry in there?
>
> —
> Reply to this email directly or view it on GitHub 
> <https://github.com/locationtech/geomesa/pull/211/files#r16119786>.
>