Пример #1
0
def main(*args):
  # Test pq con original phrase no funciona
  store = gvsig.currentLayer().getFeatureStore()
  dm = DALLocator.getDataManager()
  filterExpression = ExpressionEvaluatorLocator.getManager().createExpression()
  filterExpression.setPhrase("")
  spatialGeometry = geom.createGeometryFromWKT("POLYGON ((-74.26662451007567 40.497289998, -74.26662451007567 40.517289997999995, -74.24930400199999 40.527289998, -74.2319834939243 40.517289997999995, -74.2319834939243 40.497289998, -74.24930400199999 40.487289997999994, -74.26662451007567 40.497289998))")
  spatialGeometry.setProjection(gvsig.currentLayer().getProjection())
  
  ## store, exp, spatialGeometry
  print "Spatial"
  builder = ExpressionEvaluatorLocator.getManager().createExpressionBuilder()
  """
  expr1 = builder.and(
      builder.custom(exp.getPhrase()),
      builder.ST_Intersects(
        builder.geometry(spatialGeometry),
        builder.column("GEOMETRY")
      )
  ).toString()
  """
  expr1 = builder.ST_Intersects(
      builder.geometry(spatialGeometry),
      builder.column("GEOMETRY")
    ).toString()
  ## Creating new expression
  eva = ExpressionEvaluatorLocator.getManager().createExpression()
  eva.setPhrase(expr1)
  evaluator = DALLocator.getDataManager().createExpresion(eva)
  
  # Query
  fq = store.createFeatureQuery()
  fq.addFilter(evaluator)
  fq.retrievesAllAttributes()
  fset = store.getFeatureSet(fq)
  print "SIZE: ",fset.getSize()

  ### Reusing expression
  
  cloneExpression = filterExpression.clone()
  print "not cloning"
  cloneExpression.setPhrase(expr1)
  evaluator = DALLocator.getDataManager().createExpresion(cloneExpression)
  
  ## Query
  fq = store.createFeatureQuery()
  fq.addFilter(evaluator)
  fq.retrievesAllAttributes()
  fset = store.getFeatureSet(fq)
  print "SIZE: ",fset.getSize()
Пример #2
0
def main(*args):
    i18n = ToolsLocator.getI18nManager()
    layer = currentLayer()
    if layer == None:
        msgbox(i18n.getTranslation("_Need_a_vector_layer_selected_in_the_ToC"))
        return
    panel = AddTimeSupport(currentLayer())

    winmgr = ToolsSwingLocator.getWindowManager()
    dialog = winmgr.createDialog(
        panel.asJComponent(), i18n.getTranslation("_Add_basic_time_support"),
        i18n.getTranslation("_Add_basic_time_support_to_vectorial_layer"),
        winmgr.BUTTONS_OK_CANCEL)
    dialog.addActionListener(panel)
    dialog.show(winmgr.MODE.WINDOW)
Пример #3
0
def main(*args):
  ###
  ### INFO
  ###
  # DATA HAS FIELD NAMED CMPLNT_F_1 with HH:mm:ss format
  # CONVERT FIELD TO DATE
  
  nameFieldHour = "CMPLNT_F_1"
  nameFieldDay = "CMPLNT_FR_"
  # Transformar de antemano a fecha
  patternHour = 'HH:mm:ss'
  patternDay = 'yyyy-MM-dd'
  rangeHoursParameter = "0-10,13"
  rangeDaysParameter = "0, 3-6,7"
  expression = ''
  expression = "OFNS_DESC = 'BURGLARY'"
  xi = 0
  yi = 0
  proportion = 1
  #store = gvsig.currentView().getLayer("20f").getFeatureStore()
  store = gvsig.currentLayer().getFeatureStore()
  aoristicClock(store,
                nameFieldHour,
                nameFieldDay,
                patternHour,
                patternDay,
                rangeHoursParameter,
                rangeDaysParameter,
                expression,
                xi,
                yi,
                proportion)
Пример #4
0
    def getAllValidDocuments(self, documentException=None):
        application = ApplicationLocator.getManager()
        project = application.getCurrentProject()
        mlayer = gvsig.currentLayer()
        docs = project.getDocuments()
        all = []
        try:
            for doc in docs:
                #print doc, type(doc)
                if isinstance(doc, ViewDocument):
                    for layer in doc.getMapContext().getLayers():
                        #print "--", layer==mlayer, layer.getName()
                        if isinstance(layer, FLyrVect):
                            if documentException != layer:
                                all.append(layer)
                elif isinstance(doc, TableDocument):
                    #print "--", doc
                    if doc.getAssociatedLayer() == None:
                        if documentException != doc:
                            all.append(doc)
        except:
            ex = sys.exc_info()[1]
            print "Error", ex.__class__.__name__, str(ex)

        return all
def main(*args):
    fset = gvsig.currentLayer().getFeatureStore().getFeatureSet()
    field = "resblob"
    formatName = "PNG"  #https://docs.oracle.com/javase/tutorial/2d/images/saveimage.html
    ft = gvsig.currentLayer().getFeatureStore().getDefaultFeatureType(
    ).getAttributeDescriptor("id")
    outparams = {
        "option": 2,
        "params": {
            "path": File("/home/osc/Working/exportimages/"),
            "field": ft
        }
    }
    exp = ExpressionEvaluatorLocator.getManager().createExpression()
    exp.setPhrase("CONCAT('/home/osc/Working/exportimages/', id)")
    outparams = {"option": 3, "params": {"expression": exp}}
    processExportImage(fset, field, formatName, outparams)
 def execute(self,actionCommand, *args):
   actionCommand = actionCommand.lower()
   if actionCommand == "view-time-add-basic-support-to-datasource":
     i18n = ToolsLocator.getI18nManager()
     layer = currentLayer()
     if layer == None:
       msgbox(i18n.getTranslation("_Need_a_vector_layer_selected_in_the_ToC"))
       return 
     panel = AddTimeSupport(currentLayer())
   
     winmgr = ToolsSwingLocator.getWindowManager()
     dialog = winmgr.createDialog(
       panel.asJComponent(),
       i18n.getTranslation("_Add_basic_time_support"),
       i18n.getTranslation("_Add_basic_time_support_to_vectorial_layer"),
       winmgr.BUTTONS_OK_CANCEL
     )
     dialog.addActionListener(panel)
     dialog.show(winmgr.MODE.WINDOW)
Пример #7
0
def main(*args):
    currentView = gvsig.currentView()
    currentLayer = gvsig.currentLayer()
    area = calcularArea(currentView, currentLayer)
    if area != 0:
        message = str(
            float(area)) + " Km2"  # https://es.wikipedia.org/wiki/Uruguay
        title = unichr(
            193) + "rea"  # https://es.wikipedia.org/wiki/ISO/IEC_8859-1
        mensajeCartel(message, title, commonsdialog.IDEA)
 def execute(self, actionCommand, *args):
     actionCommand = actionCommand.lower()
     if actionCommand == "settool-reportbypoint":
         #print "### QuickinfoExtension.execute(%s)" % repr(actionCommand)
         layer = currentLayer()
         if not self.isLayerValid(layer):
             return
         viewPanel = currentView().getWindowOfView()
         mapControl = viewPanel.getMapControl()
         reportbypoint = ReportByPoint()
         reportbypoint.setTool(mapControl)
 def execute(self, actionCommand, *args):
     actionCommand = actionCommand.lower()
     if actionCommand == "settool-quickmapexport":
         #print "### QuickinfoExtension.execute(%s)" % repr(actionCommand)
         layer = currentLayer()
         if not self.isLayerValid(layer):
             return
         viewPanel = currentView().getWindowOfView()
         mapControl = viewPanel.getMapControl()
         quickmapexport = QuickMapExport()
         quickmapexport.showTool("_Quick_map_export")
Пример #10
0
 def execute(self, actionCommand, *args):
     actionCommand = actionCommand.lower()
     if actionCommand == "settool-exportmaptiles":
         #print "### QuickinfoExtension.execute(%s)" % repr(actionCommand)
         layer = currentLayer()
         if not self.isLayerValid(layer):
             return
         viewPanel = currentView().getWindowOfView()
         mapControl = viewPanel.getMapControl()
         exportmaptiles = ExportMapTilesPanel()
         exportmaptiles.showTool("_Export_map_tiles")
 def execute(self, actionCommand, *args):
     actionCommand = actionCommand.lower()
     if actionCommand == "settool-sentineldownloader":
         #print "### QuickinfoExtension.execute(%s)" % repr(actionCommand)
         layer = currentLayer()
         if not self.isLayerValid(layer):
             return
         viewPanel = currentView().getWindowOfView()
         mapControl = viewPanel.getMapControl()
         sentineldownloader = SentinelSearchPanel()
         sentineldownloader.setToolMapControl(mapControl)
         sentineldownloader.showTool("Sentinel Search Panel")
def main(*args):

    layer = gvsig.currentLayer()
    ls = layer.getLabelingStrategy()
    print ls
    print ls.getFont()
    print ls.getTextField()
    print ls.getRotationField()
    ds = LabelingFactory().createDefaultStrategy(layer)
    print ds
    ds.setTextField("LABEL")
    ds.setRotationField("ROTATION")
 def execute(self, actionCommand, *args):
     actionCommand = actionCommand.lower()
     if actionCommand == "settool-cadastralparcelsdownloader":
         #print "### QuickinfoExtension.execute(%s)" % repr(actionCommand)
         layer = currentLayer()
         if not self.isLayerValid(layer):
             return
         viewPanel = currentView().getWindowOfView()
         mapControl = viewPanel.getMapControl()
         cadastral = CadastralDownloaderPanel()
         #cadastral.setTool(mapControl)
         cadastral.showTool("_Cadastral_Parcels_Downloader")
def main(*args):
    proportionX = 1
    proportionY = 1
    xi = 0
    yi = 0
    baseLines = createBaseLayers(proportionX, proportionY)

    # Setting coordinates to aoristic clock
    nameFieldHour = "HORA"
    nameFieldDay = "DIA"
    patternHour = '%H:%M:%S'
    patternDay = '%Y-%m-%d'

    layer = gvsig.currentLayer()

    # New points layer
    schema = gvsig.createFeatureType(
        layer.getFeatureStore().getDefaultFeatureType())  # DefaultFeatureType
    newPoints = gvsig.createShape(schema)

    # Transform
    set = layer.getFeatureStore().getFeatureSet()
    newPoints.edit()
    store = newPoints.getFeatureStore()
    for f in set:
        fieldHour = f.get(nameFieldHour)
        d = datetime.datetime.strptime(fieldHour, patternHour).time()
        totalSecs = float(d.minute * 60 + d.second) / 3600
        x = float(d.hour) + float(totalSecs)
        x = x * proportionX
        fieldDay = f.get(nameFieldDay)
        dday = datetime.datetime.strptime(fieldDay, patternDay)
        y = dday.weekday()
        y = y * proportionY

        nf = store.createNewFeature(f)
        newGeom = geom.createPoint(geom.D2, x, y)
        nf.setDefaultGeometry(newGeom)
        store.insert(nf)
    newPoints.commit()
    gvsig.currentView().addLayer(newPoints)

    mp = MapContextLocator.getMapContextManager()
    leg = mp.createLegend("HeatmapLegend")
    leg.setROI(baseLines.getFullEnvelope().getGeometry())
    leg.setUseFixedViz(False)
    leg.setCorrectionFixedViz(100)
    leg.setDistance(30)
    colorTables = SymbologySwingLocator.getSwingManager().createColorTables(
    ).get(5)
    leg.setColorTable(colorTables.getColors())
    newPoints.setLegend(leg)
Пример #15
0
def main(*args):
    layer = gvsig.currentLayer()
    #showFields(gvsig.currentLayer())
    #removeField(layer, "campo3")
    #removeField(layer, "campo5")
    #addField(layer,"campo1")
    #addField(layer,"campo2")
    #renameField(layer, "campo5", "campo50")

    #print list2geompoly([[1,2],[3,10],[5,30]])
    #addFeature(layer, "test01", "test2", [15,200])
    #addFeature(layer, "test11", "test3", geom.createPoint(300, 301))
    #addFeature(layer, campo1 = "kwparam", campo2 = "kwparam2", GEOMETRY = geom.createPoint(300,300))
    #addFeature(layer, "linea", "01", [[1,2],[3,10],[5,30]])
    #addFeature(layer, "pol", "02", [[50,80],[150,50],[100,10],[0,10],[50,80]])

    """
    layer = newLayer()
    addFeature(layer, "pol", "01", [[50,80],[150,50],[100,10],[0,10],[50,80]])
    addFeature(layer, "pol", "02", [[0,0],[10,5],[10,10],[0,10],[5,5]])
    addFeature(layer, "pol", "03", [[-50, -34],[0,0], [-14,30]])
    addField(layer,"campo3")
    modifyFeatures(layer, "campo3", "nuevo poligono")
    """
    
    #Create shapes
    layer1 = newLayer(layer,"C:/gvsig/point_shape.shp", 1)
    layer2 = newLayer(layer,"C:/gvsig/line_shape.shp", 2)
    layer3 = newLayer(layer,"C:/gvsig/polygon_shape", 3)
    
    #Add features
    addFeature(layer1, "point", "01", [50,80])
    addFeature(layer1, "point", "02",[150,50])
    addFeature(layer1, "point", "03",[100,10])
    addFeature(layer1, "point", "04",[0,10])

    addFeature(layer3, "polygon", "01", [[50,80],[150,50],[100,10],[0,10],[50,80]])

    addFeature(layer2, "line", "01", [[50,80],[150,50],[100,10],[0,10],[50,80]])
    
    #Modify all values in one column
    modifyFeatures(layer1, "campo1", "Points_gsoc")
    modifyFeatures(layer2, "campo1", "Lines_gsoc")

    #Modify schema
    addField(layer1,"Name")
    removeField(layer1,"Surname")
    
    ##Execute SEXTANTE
    #r = geoprocess("perturbatepointslayer", LAYER = currentLayer(),MEAN = 5, STDDEV = 5 )
    pass
def main(*args):
    menu = JPopupMenu()
    ep = ToolsLocator.getExtensionPointManager().get("View_TocActions")
    layer = gvsig.currentLayer()
    tocItem = TocItemLeaf(None, layer.getName(), layer.getShapeType())
    for x in ep.iterator():
        action = x.create()
        print "action", action
        continue
        if action.isVisible(tocItem, (layer, )):
            print action
            menu.add(MenuItem(action, layer, tocItem))
        else:
            print "*** else:", action
Пример #17
0
def main2(*args):
  store = gvsig.currentLayer().getFeatureStore()
  dm = DALLocator.getDataManager()
  i="True"
  evaluator = dm.createExpresion(i)
  fq = store.createFeatureQuery()
  fq.addFilter(evaluator)
  fq.retrievesAllAttributes()
  fset = store.getFeatureSet(fq)
  count = 0
  for f in fset:
    count+=1
  print count
  ###
  print "Spatial"
  spatialGeometry = geom.createGeometryFromWKT("POLYGON ((-74.26662451007567 40.497289998, -74.26662451007567 40.517289997999995, -74.24930400199999 40.527289998, -74.2319834939243 40.517289997999995, -74.2319834939243 40.497289998, -74.24930400199999 40.487289997999994, -74.26662451007567 40.497289998))")
  spatialGeometry.setProjection(gvsig.currentLayer().getProjection())
  builder = ExpressionEvaluatorLocator.getManager().createExpressionBuilder()
  expr1 = builder.and(
      builder.custom(i),
      builder.ST_Intersects(
        builder.geometry(spatialGeometry),
        builder.column("GEOMETRY")
      )
  ).toString()
  eva = ExpressionEvaluatorLocator.getManager().createExpression()
  eva.setPhrase(expr1)
  
  evaluator = DALLocator.getDataManager().createExpresion(eva)
  fq = store.createFeatureQuery()
  fq.addFilter(evaluator)
  fq.retrievesAllAttributes()
  fset = store.getFeatureSet(fq)
  count = 0
  for f in fset:
    count+=1
  print count
Пример #18
0
def main(*args):

  sextantelayer = gvsig.currentLayer()
  envelope = sextantelayer.getFullEnvelope()
  distancegrid = 0.1
  gridType = GRID_HEXAGON_HORIZONTAL
  addEmptyGrids = True
  dm = DALLocator.getDataManager()
  i="KY_CD=344"
  valueExpression = dm.createExpresion(i)

  store = sextantelayer.getFeatureStore()
  projection = sextantelayer.getProjection()
  
  pointDensityGridCreation(None, store, gridType, distancegrid, addEmptyGrids, projection, envelope, valueExpression)
def main(*args):
  layer = gvsig.currentLayer()
  store = layer.getFeatureStore()
  fset = store.getFeatureSet()
  for feature in fset:
    field = feature.get("HORA")
    pattern = "HH:mm:ss"
    #field = "23:10:10"
    formatter = SimpleDateFormat(pattern)
    newDate = formatter.parse(field)
    
    cal = Calendar.getInstance()
    cal.setTime(newDate)
    hour = cal.get(Calendar.HOUR_OF_DAY)
    print hour
def main1(*args):
  layer = gvsig.currentLayer()
  store = layer.getFeatureStore()
  fset = store.getFeatureSelection() #.getFeatureSet()
  cal = Calendar.getInstance()
  print "First day: ", cal.getFirstDayOfWeek()
  print Calendar.MONDAY, Calendar.SUNDAY, Calendar.SATURDAY
  cal.setFirstDayOfWeek(Calendar.MONDAY)
  print "First day: ", cal.getFirstDayOfWeek()
  for feature in fset:
    field = feature.get(0)
    print type(field), field
    
    cal.setTime(field)
    print type(cal)
    value = cal.get(Calendar.DAY_OF_WEEK)
    print value
def main(*args):
    viewDoc = gvsig.currentView()
    layer = viewDoc.getLayer("manzanas_pob")
    layer = gvsig.currentLayer()
    panel = ReportByPointPanel(layer)
    panel.setPreferredSize(400, 300)

    winmgr = ToolsSwingLocator.getWindowManager()
    dialog = winmgr.createDialog(panel.asJComponent(), "ReportByPoint test",
                                 "ReportByPoint information",
                                 winmgr.BUTTONS_OK_CANCEL)
    dialog.show(winmgr.MODE.DIALOG)
    if dialog.getAction() == winmgr.BUTTON_OK:
        panel.save()
        print "Ok"
        print "Show field: "
    else:
        print "Cancel"
def main(*args):
  proportionX = 1
  proportionY = 1
  nameFieldHour = "CDATE"
  nameFieldDay = "CMPLNT_FR_"
  nameFieldHour = "CMPLNT_FR_"
  dm = DALLocator.getDataManager()
  evaluator = dm.createExpresion("")
  exp = ExpressionEvaluatorLocator.getManager().createExpression()
  exp.setPhrase('')
  print evaluator
  expression = exp
  xi = 0
  yi = 0
  store = gvsig.currentLayer().getFeatureStore()
  aoristicClockGrid(store,
                      proportionX,
                      proportionY,
                      nameFieldHour,
                      nameFieldDay,
                      expression,
                      0,
                      0)
Пример #23
0
def main(*args):
    currentProject = gvsig.currentProject()  # Proyecto actual
    # Vista actual
    currentView = gvsig.currentView()
    print "Vista actual:", currentView
    # Capas
    print "Capas de la vista actual:"
    if currentView != None:
        currentViewLayers = currentView.getLayers()
        for currentViewLayer in currentViewLayers:
            print " ", currentViewLayer
    # Capa actual
    currentLayer = gvsig.currentLayer()
    print "Sumatory of all of the areas in the polygon layer: ", currentLayer

    area = calcularArea(currentView, currentLayer)
    if area != 0:
        message = str(
            float(area)) + " Km2"  # https://es.wikipedia.org/wiki/Uruguay
        title = unichr(
            193) + "rea"  # https://es.wikipedia.org/wiki/ISO/IEC_8859-1
        messageType = commonsdialog.IDEA
        root = None
        commonsdialog.msgbox(message, title, messageType, root)
Пример #24
0
def main(*args):
    #showFields(gvsig.currentLayer())
    #removeField(layer, "campo3")
    #removeField(layer, "campo5")
    #addField(layer,"campo1")
    #addField(layer,"campo2")
    #renameField(layer, "campo5", "campo50")

    #print list2geompoly([[1,2],[3,10],[5,30]])
    #addFeature(layer, "test01", "test2", [15,200])
    #addFeature(layer, "test11", "test3", geom.createPoint(300, 301))
    #addFeature(layer, campo1 = "kwparam", campo2 = "kwparam2", GEOMETRY = geom.createPoint(300,300))
    #addFeature(layer, "linea", "01", [[1,2],[3,10],[5,30]])
    #addFeature(layer, "pol", "02", [[50,80],[150,50],[100,10],[0,10],[50,80]])
    """
    layer = newLayer()
    addFeature(layer, "pol", "01", [[50,80],[150,50],[100,10],[0,10],[50,80]])
    addFeature(layer, "pol", "02", [[0,0],[10,5],[10,10],[0,10],[5,5]])
    addFeature(layer, "pol", "03", [[-50, -34],[0,0], [-14,30]])
    addField(layer,"campo3")
    modifyFeatures(layer, "campo3", "nuevo poligono")
    """
    """
    #Create shapes
    layer1 = newLayer(layer,"C:/gvsig/point_shape.shp", 1)
    layer2 = newLayer(layer,"C:/gvsig/line_shape.shp", 2)
    layer3 = newLayer(layer,"C:/gvsig/polygon_shape", 3)
    
    #Add features
    addFeature(layer1, "point", "01", [50,80])
    addFeature(layer1, "point", "02",[150,50])
    addFeature(layer1, "point", "03",[100,10])
    addFeature(layer1, "point", "04",[0,10])

    addFeature(layer3, "polygon", "01", [[50,80],[150,50],[100,10],[0,10],[50,80]])

    addFeature(layer2, "line", "01", [[50,80],[150,50],[100,10],[0,10],[50,80]])
    
    #Modify all values in one column
    modifyFeatures(layer1, "campo1", "Points_gsoc")
    modifyFeatures(layer2, "campo1", "Lines_gsoc")

    #Modify schema
    addField(layer1,"Name")
    removeField(layer1,"Surname")
    
    ##Execute SEXTANTE
    #r = geoprocess("perturbatepointslayer", LAYER = currentLayer(),MEAN = 5, STDDEV = 5 )
    """
    #layer = gvsig.currentView().getLayer("line_04.shp")
    #newLayer(layer, "C:/gvsig/gvpy_test006.shp")
    #layer2 = copyLayer(layer, "C:/gvsig/gvpy_copylayer_012.shp")
    #v = copyLayer(layer, "C:/gvpy_copylayer_new_06.shp")
    #layer = gvsig.currentView().getLayer("gvpy_copylayer_new_06")
    #addFeature(v, "Camino", [[50,00],[50,50],[10,10],[0,1],[50,18]])

    #Basics field
    """
    addField(v, "Direccion")
    modifyFeatures(v, "Direccion", "Av")
    removeField(v, "Direccion")
    """
    """
    #EJEMPLO 1
    #New shapes
    layer = gvpy.runalg("randomvector", 20, gvpy.TYPE_LINE, EXTENT=[0,0,0,500,500,0], OUTVIEW="Po1")
    #layer = gvsig.currentLayer()
    #Advanced field
    removeField(layer, "ID")
    removeField(layer, "Distance")
    addField(layer, "ID") #Add fields
    addField(layer, "Distance", "STRING")
    addField(layer, "Long", "LONG")
    removeField(layer, "Long") #Remove field
    modifyFeatures(layer, "ID", "90") #Modify all features 
    modifyField(layer, "ID", "LONG") #Modify type of field
    modifyField(layer, "Distance", "FLOAT")
    addFeature(layer, 1, 0, [[50,0],[1000,0]]) #Add new feature with geometry line
    for feature in layer.features():
        perimeter = feature.geometry().perimeter()
        modifyFeature(layer, feature, "Distance", perimeter) #Modify each feature
    
    pass
    #FIN EJEMPLO 1
    """

    #modifyFeatures(gvsig.currentLayer(), "ID", 100, "Distance == 90")
    layer = gvsig.currentLayer()
    for feature in gvsig.currentLayer().features():
        value = feature.Distance
        #modifyFeature(layer, feature, "ID", distance)
        feature.edit()
        feature.set("ID", value)
        layer.update(feature)
    #model2script("C://gsoc//test02.model", "C://gsoc//nuevoScript.py")
    print "END TEST"
 def isEnabled(self):
     layer = currentLayer()
     #if not self.isLayerValid(layer):
     #  return False
     return True
def main(*args):

    gvsig.currentLayer().getDataStore().getFeatureSelection()
def main(*args):
    store1 = gvsig.currentLayer().getFeatureStore()
    builder = store1.createExpressionBuilder()
def main(*args):
  layer = gvsig.currentLayer()
  store = layer.getFeatureStore()
  print store.getDefaultFeatureType()
def main(*args):
    store = gvsig.currentLayer().getFeatureStore()
    l = FieldCalculatorTool(store)
    l.showTool("Testing")
    pass
def main(*args):

    field = "MAPA"
    des = gvsig.currentLayer().getFeatureStore().getDefaultFeatureType(
    ).getAttributeDescriptor(field)
    print des.getObjectClass(), des.getSubtype()
Пример #31
0
def mainLibrary():
    #showFields(gvsig.currentLayer())
    #removeField(layer, "campo3")
    #removeField(layer, "campo5")
    #addField(layer,"campo1")
    #addField(layer,"campo2")
    #renameField(layer, "campo5", "campo50")

    #print list2geompoly([[1,2],[3,10],[5,30]])
    #addFeature(layer, "test01", "test2", [15,200])
    #addFeature(layer, "test11", "test3", geom.createPoint(300, 301))
    #addFeature(layer, campo1 = "kwparam", campo2 = "kwparam2", GEOMETRY = geom.createPoint(300,300))
    #addFeature(layer, "linea", "01", [[1,2],[3,10],[5,30]])
    #addFeature(layer, "pol", "02", [[50,80],[150,50],[100,10],[0,10],[50,80]])

    """
    layer = newLayer()
    addFeature(layer, "pol", "01", [[50,80],[150,50],[100,10],[0,10],[50,80]])
    addFeature(layer, "pol", "02", [[0,0],[10,5],[10,10],[0,10],[5,5]])
    addFeature(layer, "pol", "03", [[-50, -34],[0,0], [-14,30]])
    addField(layer,"campo3")
    modifyFeatures(layer, "campo3", "nuevo poligono")
    """
    """
    #Create shapes
    layer1 = newLayer(layer,"C:/gvsig/point_shape.shp", 1)
    layer2 = newLayer(layer,"C:/gvsig/line_shape.shp", 2)
    layer3 = newLayer(layer,"C:/gvsig/polygon_shape", 3)

    #Add features
    addFeature(layer1, "point", "01", [50,80])
    addFeature(layer1, "point", "02",[150,50])
    addFeature(layer1, "point", "03",[100,10])
    addFeature(layer1, "point", "04",[0,10])

    addFeature(layer3, "polygon", "01", [[50,80],[150,50],[100,10],[0,10],[50,80]])

    addFeature(layer2, "line", "01", [[50,80],[150,50],[100,10],[0,10],[50,80]])

    #Modify all values in one column
    modifyFeatures(layer1, "campo1", "Points_gsoc")
    modifyFeatures(layer2, "campo1", "Lines_gsoc")

    #Modify schema
    addField(layer1,"Name")
    removeField(layer1,"Surname")

    ##Execute SEXTANTE
    #r = geoprocess("perturbatepointslayer", LAYER = currentLayer(),MEAN = 5, STDDEV = 5 )
    """
    #layer = gvsig.currentView().getLayer("line_04.shp")
    #newLayer(layer, "C:/gvsig/gvpy_test006.shp")
    #layer2 = copyLayer(layer, "C:/gvsig/gvpy_copylayer_012.shp")
    #v = copyLayer(layer, "C:/gvpy_copylayer_new_06.shp")
    #layer = gvsig.currentView().getLayer("gvpy_copylayer_new_06")
    #addFeature(v, "Camino", [[50,00],[50,50],[10,10],[0,1],[50,18]])

    #Basics field
    """
    addField(v, "Direccion")
    modifyFeatures(v, "Direccion", "Av")
    removeField(v, "Direccion")
    """

    """
    #EJEMPLO 1
    #New shapes
    layer = gvpy.runalg("randomvector", 20, gvpy.TYPE_LINE, EXTENT=[0,0,0,500,500,0], OUTVIEW="Po1")
    #layer = gvsig.currentLayer()
    #Advanced field
    removeField(layer, "ID")
    removeField(layer, "Distance")
    addField(layer, "ID") #Add fields
    addField(layer, "Distance", "STRING")
    addField(layer, "Long", "LONG")
    removeField(layer, "Long") #Remove field
    modifyFeatures(layer, "ID", "90") #Modify all features
    modifyField(layer, "ID", "LONG") #Modify type of field
    modifyField(layer, "Distance", "FLOAT")
    addFeature(layer, 1, 0, [[50,0],[1000,0]]) #Add new feature with geometry line
    for feature in layer.features():
        perimeter = feature.geometry().perimeter()
        modifyFeature(layer, feature, "Distance", perimeter) #Modify each feature

    pass
    #FIN EJEMPLO 1
    """

    #modifyFeatures(gvsig.currentLayer(), "ID", 100, "Distance == 90")
    layer = gvsig.currentLayer()
    for feature in gvsig.currentLayer().features():
        value = feature.Distance
        #modifyFeature(layer, feature, "ID", distance)
        feature.edit()
        feature.set("ID", value)
        layer.update(feature)
    #model2script("C://gsoc//test02.model", "C://gsoc//nuevoScript.py")
    print "END TEST"
Пример #32
0
def main(*args):
    #geoprocessSearch(" ")
    #geoprocessHelp("closegapsnn")
    #geoprocessHelp("perturbatepointslayer")
    #r = runalg("perturbatepointslayer", LAYER = gvsig.currentLayer(),MEAN = 10, STDDEV = 10 )
    #r = runalg("perturbatepointslayer", EXTENT = "VIEW", LAYER = currentLayer(),MEAN = 10, STDDEV = 10 )
    #r = runalg("perturbatepointslayer", EXTENT = [0,0,500,500], LAYER = currentLayer(), MEAN = 10, STDDEV = 10 )
    #r = runalg("perturbatepointslayer", PATH = "C://gvsig//perturbatepoints028.shp", LAYER = gvsig.currentLayer(),MEAN = 5, STDDEV = 5 )
    #layer = gvsig.currentView().getLayer("data_test_lines.shp")
    #r = runalg("linestoequispacedpoints", LINES=layer,DISTANCE=2)
   
    #for i in range(10):
    #r = runalg("perturbatepointslayer", LAYER = r[0],PATH = "C://gvsig//perturbatepoints028_" + str(i) + ".shp",MEAN =0.5, STDDEV = 0.5 )
    #r = runalg("fixeddistancebuffer", LAYER = r[0], DISTANCE=1, TYPES="", RINGS=3, NOTROUNDED=False)
    #r = runalg("randomvector", COUNT=20, TYPE=1, EXTENT=gvsig.currentView())
    #RASTER
    #r1 = runalg("generaterandomnormal", EXTENT = [0,0,500,500], PATH = "C://gvsig//perturbatepoints030.tif", MEAN =0.5, STDDEV = 0.5)
    #layer = gvsig.currentView().getLayer("perturbatepoints030")
    
    #raster = currentRaster()
    #print raster
    
    #layer = gvsig_raster.loadRasterLayer('c:/gvsig/test_low.tif')
    #r1 = runalg("gradientlines",INPUT = layer, MIN=1, MAX=10, SKIP=1)
    #r = runalg("gridorientation",INPUT=layer,METHOD=0)
    #r = runalg("gridorientation",INPUT=layer,METHOD=0, PATH = "C://gvsig//perturbatepoints010.tif")
    #r = runalg("gridorientation", INPUT=raster, METHOD=0, PATH = "C://gvsig//perturbatepoints011.tif")
    #r = runalg("gradientlines", INPUT = layer, MIN=1, MAX=10, SKIP=1, PATH = "C://gvsig//perturbatepoints012.tif")
    #r = runalg("generaterandomnormal", EXTENT = [0,0,500,500], PATH = "C://gvsig//perturbatepoints013.tif", MEAN =0.5, STDDEV = 0.5)
    #geoprocessHelp("randomvector")
    #r = runalg("randomvector", COUNT=20, TYPE=2, EXTENT=gvsig.currentLayer())
    #r = runalg("randomvector", 200, TYPE_POINT, EXTENT=gvsig.currentLayer(), PATH="C://gvsig//test_puntos_sm01.shp")
    #r = runalg("randomvector", COUNT=20, TYPE=1, EXTENT=gvsig.currentView())
    #r = runalg("randomvector", COUNT=20, TYPE=1, EXTENT="VIEW")
    #r = runalg("randomvector", COUNT=20, TYPE=1, EXTENT=currentRaster())
    #r = runalg("gvSIG-convexhull", LAYER="Puntos_de_interes_01.shp", CHECK=True, PATH = "C://gvsig//gvsigconvexhull_001.shp")
    #r = runalg("generaterandomnormal", PATH = "C://gvsig//per.tif", EXTENT=gvsig.currentLayer(), CELLSIZE = 100, PATH = "C://gvsig//perturbatepoints014.tif", MEAN =5, STDDEV = 5)
    #geoprocessHelp("tablebasicstats")
    #r =runalg("tablebasicstats",TABLE=gvsig.currentTable(), FIELD=0)

    #Without parameters label

    #layers = gvsig.currentView().getLayers()
    ##r = runalg("gridorientation", layer, 0, PATH = "C://gvsig//perturbatepoints012.tif")
    
    #r = runalg("gridorientation", layer, 0)
    #r = runalg("gradientlines", layers[0], 1, 10, 1, PATH = "C://gvsig//perturbatepoints012.shp")
    #r = runalg("cva", "test_low", "test_low", "test_low", "test_low")
    #r = runalg("cva", currentRaster(), currentRaster(), currentRaster(), currentRaster(),PATH=["C:/gvsig/1.tif","C:/gvsig/2.tif"])
    
    #layerRaster = gvsig_raster.loadRasterLayer('c:/gvsig/test_low.tif')
    #r = runalg("gridorientation",layerRaster,0, PATH = "C://gvsig//Grid_orientation.tif",EXTENT=layerRaster, CELLSIZE=1, CELLSIZEZ=10)
    #r2 = runalg("cva", r, r, r, r, PATH=["C:/gvsig/1.tif","C:/gvsig/2.tif"])
    #print r2[0], r2[1]
    #print layerRaster
    #print getProjectLayer("Vista1", "test_low")
    
    
    #layer = getProjectLayer("Vista1", "as.shp")
    #extent = getProjectLayer("Vista1", "analisis_extent")
    #runalg("difference", "as.shp", "vista2_testeo.shp", PATH="C:/gvsig/recorte_extent.shp", EXTENT=[100, 100, 0, 540, 500, 0])
    #runalg("difference", "vista2_testeo.shp", layer, PATH="C:/gvsig/recorte_extent_2.shp", EXTENT=layer, OUTVIEW="Nueva")
    #r = runalg("tablebasicstats", "species", 0)
    #print r.encode("UTF-8")
    print gvsig.currentLayer()
    algHelp("generaterandomnormal")
    r = runalg("generaterandomnormal", 100,100, CELLSIZE=100, EXTENT=[250,250,0,500,500,0])
    r = runalg("generaterandomnormal", 10, 10, CELLSIZE=50, EXTENT=[500,500,0, 1000,1000,0])
    r = runalg("generaterandombernoulli", 50.0, CELLSIZE=25, EXTENT=[1000,1000,0, 1250,1250,0])
    r = runalg("gradientlines", r, 1, 100, 1)
    
    v1 = runalg("randomvector",10, TYPE_POLYGON, EXTENT=[0,0,0,500,500,0])
    v2 = runalg("randomvector", 5, TYPE_POLYGON, EXTENT=v1)
    v3 = runalg("difference", v1, v2, PATH="C:/gvsig/Diferencia.shp")
    v4 = runalg("randomvector", 5, 0, PATH="C:/gvsig/randomvector.shp", EXTENT=v3)
    v5 = runalg("randomvector", 100, 2, PATH="C:/gvsig/randompoints.shp", EXTENT="randomvector")
    #not working v6 = runalg("gvSIG-xyshift", "randompoints", "false", "-250.0", "-250.0", PATH=["C:/gvsig/ran10.shp","C:/gvsig/ran20.shp","C:/gvsig/ran30.shp"])
    algHelp("tablebasicstats")
    v7 = runalg("gvSIG-buffer", "randompoints", False, 50.0, 0, False, True, 0, 0, PATH="C:/gvsig/buffer_gvsig010.shp")
    print "End"
Пример #33
0
def main(*args):
    layer = gvsig.currentLayer()
    p = 500000000
    print areaTotal(layer)
    gvsig.currentView().addLayer(copyLayerFilterByArea(p, layer))