Loading [MathJax]/jax/element/mml/optable/BasicLatin.js

4 votos

¿Cómo obtener una representación JSON de una geometría JTS?

Utilizo el STC ( http://www.vividsolutions.com/jts/JTSHome.htm ) y necesito obtener una representación JSON de un Punto :

Haz de hibernación:

@Type(type = "org.hibernate.spatial.GeometryType")
@Column(name="the_geom")
private Point theGeom;

Mesa:

CREATE TABLE cities
(
  id_city serial NOT NULL,
  name text,
  the_geom geometry,
  id_user integer,
  CONSTRAINT cities_pkey PRIMARY KEY (id_city),
  CONSTRAINT fk2de48dcf3c0b0090 FOREIGN KEY (id_user)
      REFERENCES users (id_user) MATCH SIMPLE
      ON UPDATE NO ACTION ON DELETE NO ACTION
)

Necesito algo como:

jsonString = someClass.convertToJson( myBeam.getTheGeom() )

0 votos

La página de inicio del STC se encuentra en tsusiatsoftware.net - ahora está en la versión 1.12 - ¿es la que estás usando?

0 votos

Bueno, suena extraño que un proyecto tenga 2 páginas de inicio diferentes. Estoy en 1.8, pero ¿cómo puede la nueva versión me ayuda en esta cuestión?

4voto

Frederik Slijkerman Puntos 4604

Del consejo de @Mike Toews:

@Entity
@Table(name="cities") 
public class City {

    @Type(type = "org.hibernate.spatial.GeometryType")
    @Column(name="the_geom")
    private Point theGeom;

    public String asJson() {
        GeometryJSON g = new GeometryJSON();
        return g.toString(theGeom) ; 
    }
}

Necesitará al menos estos JARs:

gt-api-10.0.jar
gt-epsg-extension-10.0.jar
gt-epsg-wkt-10.0.jar
gt-geojson-10.2.jar
gt-geometry-10.0.jar
gt-metadata-10.0.jar
gt-opengis-10.0.jar
gt-referencing-10.0.jar
jts-1.8.jar
jtsio-1.8.jar

y algunos otros que ahora no recuerdo, porque realmente no necesito GeoTools.

0 votos

No necesitarás el material de Hibernate, por supuesto.

1voto

hernan43 Puntos 566

Utilice una sentencia SELECT con ST_AsGeoJSON para que el servidor devuelva los datos como GeoJSON texto.

En una nota relacionada, parece que GeoTools ha ampliado el STC para que tenga un Clase GeometryJSON para la función que busca en un entorno Java puro.

0 votos

Lo sé. ST_AsGeoJSON y no es lo que necesito. Parece que GeoTools está más cerca.

2 votos

Si me llevas en la dirección correcta, te recompensaré, pero en realidad no das una respuesta clara, así que aceptaré la mía.

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