def handleAlgorithmResults(alg, progress, showResults = True):
     wrongLayers = []
     htmlResults = False;
     progress.setText("Loading resulting layers")
     i =  0
     for out in alg.outputs:
         progress.setPercentage(100 * i / float(len(alg.outputs)))
         if out.hidden or not out.open:
             continue
         if isinstance(out, (OutputRaster, OutputVector, OutputTable)):
             try:
                 if out.value.startswith("memory:"):
                     layer = out.memoryLayer
                     QgsMapLayerRegistry.instance().addMapLayers([layer])
                 else:
                     if SextanteConfig.getSetting(SextanteConfig.USE_FILENAME_AS_LAYER_NAME):
                         name = os.path.basename(out.value)
                     else:
                         name = out.description
                     QGisLayers.load(out.value, name, alg.crs, RenderingStyles.getStyle(alg.commandLineName(),out.name))
             except Exception, e:
                 wrongLayers.append(out)
                 #QMessageBox.critical(None, "Error", str(e))
         elif isinstance(out, OutputHTML):
             SextanteResults.addResult(out.description, out.value)
             htmlResults = True
示例#2
0
 def handleAlgorithmResults(alg, showResults=True):
     htmlResults = False
     for out in alg.outputs:
         if out.hidden or not out.open:
             continue
         if isinstance(out, (OutputRaster, OutputVector, OutputTable)):
             try:
                 if out.value.startswith("memory:"):
                     layer = out.memoryLayer
                     QgsMapLayerRegistry.instance().addMapLayer(layer)
                 else:
                     if SextanteConfig.getSetting(
                             SextanteConfig.USE_FILENAME_AS_LAYER_NAME):
                         name = os.path.basename(out.value)
                     else:
                         name = out.description
                     QGisLayers.load(
                         out.value, name, alg.crs,
                         RenderingStyles.getStyle(alg.commandLineName(),
                                                  out.name))
             except Exception, e:
                 QMessageBox.critical(None, "Error", str(e))
         elif isinstance(out, OutputHTML):
             SextanteResults.addResult(out.description, out.value)
             htmlResults = True
 def loadHTMLResults(self, alg, i):
     for out in alg.outputs:
         if out.hidden or not out.open:
             continue
         if isinstance(out, OutputHTML):
             SextanteResults.addResult(out.description + "[" + str(i) + "]",
                                       out.value)
 def handleAlgorithmResults(alg, progress, showResults=True):
     wrongLayers = []
     htmlResults = False
     progress.setText("Loading resulting layers")
     i = 0
     for out in alg.outputs:
         progress.setPercentage(100 * i / float(len(alg.outputs)))
         if out.hidden or not out.open:
             continue
         if isinstance(out, (OutputRaster, OutputVector, OutputTable)):
             try:
                 if out.value.startswith("memory:"):
                     layer = out.memoryLayer
                     QgsMapLayerRegistry.instance().addMapLayers([layer])
                 else:
                     if SextanteConfig.getSetting(
                             SextanteConfig.USE_FILENAME_AS_LAYER_NAME):
                         name = os.path.basename(out.value)
                     else:
                         name = out.description
                     QGisLayers.load(
                         out.value, name, alg.crs,
                         RenderingStyles.getStyle(alg.commandLineName(),
                                                  out.name))
             except Exception, e:
                 wrongLayers.append(out)
                 #QMessageBox.critical(None, "Error", str(e))
         elif isinstance(out, OutputHTML):
             SextanteResults.addResult(out.description, out.value)
             htmlResults = True
示例#5
0
 def createSummaryTable(self):
     createTable = False
     for out in self.algs[0].outputs:
         if isinstance(out, (OutputNumber,OutputString)):
             createTable = True
             break
     if not createTable:
         return
     outputFile = SextanteUtils.getTempFilename("html")
     f = open(outputFile, "w")
     for alg in self.algs:
         f.write("<hr>\n")
         for out in alg.outputs:
             if isinstance(out, (OutputNumber,OutputString)):
                 f.write("<p>" + out.description + ": " + str(out.value) + "</p>\n")
     f.write("<hr>\n")
     f.close()
     SextanteResults.addResult(self.algs[0].name + "[summary]", outputFile)
示例#6
0
 def fillTree(self):
     elements = SextanteResults.getResults()
     if len(elements) == 0:
         self.lastUrl = None
         return
     for element in elements:
         item = TreeResultItem(element)
         item.setIcon(0, self.keyIcon)
         self.tree.addTopLevelItem(item)
     self.lastUrl = QtCore.QUrl(elements[-1].filename)
示例#7
0
 def fillTree(self):
     elements = SextanteResults.getResults()
     if len(elements) == 0:
         self.lastUrl = None
         return
     for element in elements:
         item = TreeResultItem(element)
         item.setIcon(0, self.keyIcon)
         self.tree.addTopLevelItem(item)
     self.lastUrl = QtCore.QUrl(elements[-1].filename)
 def handleAlgorithmResults(alg, showResults = True):
     htmlResults = False;
     for out in alg.outputs:
         if out.hidden or not out.open:
             continue
         if isinstance(out, (OutputRaster, OutputVector, OutputTable)):
             try:
                 if out.value.startswith("memory:"):
                     layer = out.memoryLayer
                     QgsMapLayerRegistry.instance().addMapLayer(layer)
                 else:
                     if SextanteConfig.getSetting(SextanteConfig.USE_FILENAME_AS_LAYER_NAME):
                         name = os.path.basename(out.value)
                     else:
                         name = out.description
                     QGisLayers.load(out.value, name, alg.crs, RenderingStyles.getStyle(alg.commandLineName(),out.name))
             except Exception, e:
                 QMessageBox.critical(None, "Error", str(e))
         elif isinstance(out, OutputHTML):
             SextanteResults.addResult(out.description, out.value)
             htmlResults = True
 def loadHTMLResults(self, alg, i):
     for out in alg.outputs:
         if out.hidden or not out.open:
             continue
         if isinstance(out, OutputHTML):
             SextanteResults.addResult(out.description + "[" + str(i) + "]", out.value)