1 votos

Crear capa límite en FeatureLayer Geotools

Quiero crear una capa límite en mi FeatureLayer en Geotools ¿hay alguna opción directa para crear esto. La siguiente imagen muestra lo que quiero lograr esto. enter image description here

Por favor, sugiera . hemos hecho esto en DotNET mediante el algoritmo ConvexHull .

0voto

Adam Ernst Puntos 6939

La mayor parte de las funciones espaciales de GeoTools son gestionadas por el STC, por lo que siempre merece la pena consultarlas. Yo utilizaría el STC ConvexHull clase - parece tomar un geometry o Coordinate en la construcción y tiene un getConvexHull() método. Así que algo como:

private Geometry convexHull(SimpleFeatureCollection fc) {
    ArrayList<Geometry> geoms = new ArrayList<>();
    try (SimpleFeatureIterator itr = fc.features()) {
      while (itr.hasNext()) {
        SimpleFeature f = itr.next();
        geoms.add((Geometry) f.getDefaultGeometry());
      }
      GeometryCollection geometryCollection = (GeometryCollection) factory.buildGeometry(geoms);

      Geometry g = geometryCollection.union();
      ConvexHull hull = new ConvexHull(g);

      return hull.getConvexHull();
    }

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X