[Gvsig_desarrolladores] Crear un nuevo SHP

Cèsar Ordiñana cordinyana en gvsig.com
Mar Mar 27 12:46:28 CEST 2012


El 27/03/12 12:06, seriznue escribió:
> Hola, estoy desarrollando un geoproceso para gvsig 2.0 en el cual obtengo
> como resultado un shp de poligonos. ¿como puedo crear un shp nuevo? En la
> documentación de gvsig aparece documentado como acceder a un shp para
> recorrer, modificar y escribir features...pero no he encontrado nada sobre
> crear uno nuevo shp. ¿podrian ayudarme?
>
> Muchisimas gracias por adelantado
>
> Un cordial saludo
>
> Sergio izquierdo

Hola Sergio.

Aquí [1] tienes el enlace a la documentación dónde se explica cómo crear 
un nuevo almacén de datos.

En tu caso, como se trata de un SHP, la creación de los parámetros será 
algo como esto:

     NewFeatureStoreParameters sparams = 
(NewFeatureStoreParameters)serverExplorer.getAddParameters("SHP");
     sparams.setDynValue("shpFile","prueba.shp");
     sparams.setDynValue("CRS","EPSG:23030");
     sparams.setDynValue("geometryType", Geometry.TYPES.SURFACE);

Además en el feature type tendrás que añadir un atributo para las geometrías

     EditableFeatureType featureType = 
(EditableFeatureType)sparams.getDefaultFeatureType();
     featureType.add("NOMBRE", DataTypes.STRING,100);
     featureType.add("MUNICIPIO", DataTypes.STRING,100);
     featureType.add("POBLACION", DataTypes.LONG);
     GeometryType type = 
GeometryLocator.getGeometryManager().getGeometryType(Geometry.TYPES.SURFACE, 
Geometry.SUBTYPES.GEOM2D);
     featureType.add("GEOMETRY", DataTypes.GEOMETRY).setGeometryType(type);
     featureType.setDefaultGeometryAttributeName("GEOMETRY");

Saludos.

[1] 
http://www.gvsig.org/web/projects/gvsig-desktop/docs/devel/org.gvsig.fmap.dal/2.0.0/featurestore/consumer-services/creacion-de-un-nuevo-almacen

-- 
Cèsar Ordiñana Navarro
gvSIG software architect
DiSiD Technologies (http://www.disid.com)



Más información sobre la lista de distribución gvSIG_desarrolladores