import sys import os from gvsig import * from geom import * from java.util import Properties sys.path.append("/APLICACIONES/GIS/gvSIG-desktop-2.1.0/postgresql-9.1-903.jdbc4.jar"); import org.postgresql.Driver as Driver def main(): # Create the new layer newProjection = currentView().getProjectionCode() newLayerSchema = createSchema() newLayerSchema.append("ID","INTEGER") newLayerSchema.append("GEOMETRY","GEOMETRY") newLayerName = "/APLICACIONES/GIS/gvSIG-desktop-2.2.0/micapa.shp" newLayer = createShape(newLayerSchema,newLayerName,CRS=newProjection,geometryType=POINT) # Connect to the database props = Properties() props.put("user","miusuario") props.put("password","miclave") db = Driver().connect("jdbc:postgresql://localhost/mibasededatos", props) # Get geometry info from database and insert it into the new layer c = db.createStatement() rs = c.executeQuery("miconsulta") data = {} while rs.next(): id = rs.getInt(1) newX = rs.getObject(2) newY = rs.getObject(3) print(id,newX,newY) newGeom = createPoint(newX,newY) dbValues = {"ID":id,"GEOMETRY":newGeom} newLayer.append(dbValues) rs.close() c.close() db.close() currentView().addLayer(newLayer) newLayer.commit()