Médéric RIBREUX d10aaf4bd4 Support multiple output file raster formats:
* A new createopt textbox has been added to the parameters dialog for algorithms which exports to raster files.
* A new metaopt textbox has also been added to the Algorithm parameters dialog.
* Raster file format is detected from output filename extension.
* GdalUtils has been improved to correctly detect raster formats supported for creation.
* QFileDialog for output rasters now display only file filters for supported output raster file formats.
2017-11-05 13:18:24 +01:00

9.5 KiB

TODO List for GRASS7 algorithms support into QGIS Processing

QGIS3 Processing Port

  • Things to do elsewhere

    • TODO We need Null QgsProcessingParameterNumber!
    • TODO We need NULL QgsProcessingParameterPoint!
    • TODO We need a QgsParameterMultipleInputLayers parameter for minimum and maximum number of layers.
    • TODO Open all the files in a QgsProcessingOutputFolder at the end of the algorithm.
  • TODO Review all the methods of QgsProcessingAlgorithm.

  • TODO Make tests under MS-Windows 7 for Utf-8 support.

    • DONE Algorithms can handle data with utf-8 in filepath.
    • TODO Support utf-8 profiles filepath.
  • TODO Review Python3 port.

    • dict iteritems
  • TODO Improve unit tests.

  • TODO Use prepareAlgorithm for algorithm preparation.

  • TODO Support ParameterTable.

  • TODO Support multiple output vector formats.

    • TODO Try to use v.external.out on simple algorithms.
    • TODO Add an optional/advanced 'format option' textbox if vector output is detected.
  • TODO Support multiple input vector formats

    • DONE create a general inputVectorLayer method.
    • TODO Support database connections.
    • TODO Support Auth API for databases connections.
    • TODO Some formats can't be correctly used by v.external:
      • GML.
    • TODO Build a workaround for those formats (use v.in.ogr).
  • TODO Review all algorithm parameters.

    • MOD r.basins.fill
    • OK r.blend
    • OK r.buffer
    • OK r.buffer.lowmem
    • OK r.carve
    • OK r.category
    • MOD r.circle
    • MOD r.clump
    • OK r.coin
    • TODO r.colors OutputDirectory
    • OK r.colors.out
    • OK r.colors.stddev
    • OK r.composite
    • OK r.compress
    • MOD r.contour
    • MOD r.cost
    • OK r.covar
    • OK r.cross
    • r.describe
    • r.distance
    • r.drain
    • r.external
    • r.external.out
    • r.fill.dir
    • r.fillnulls
    • r.flow
    • r.grow.distance
    • r.grow
    • r.gwflow
    • r.his
    • r.horizon
    • r.import
    • r.in.ascii
    • r.in.aster
    • r.in.bin
    • r.in.gdal
    • r.in.gridatb
    • r.in.lidar
    • r.in.mat
    • r.in.png
    • r.in.poly
    • r.in.srtm
    • r.in.wms
    • r.in.xyz
    • r.info
    • r.kappa
    • r.lake
    • r.latlong
    • r.li.cwed
    • r.li.daemon
    • r.li.dominance
    • r.li.edgedensity
    • r.li
    • r.li.mpa
    • r.li.mps
    • r.li.padcv
    • r.li.padrange
    • r.li.padsd
    • r.li.patchdensity
    • r.li.patchnum
    • r.li.pielou
    • r.li.renyi
    • r.li.richness
    • r.li.shannon
    • r.li.shape
    • r.li.simpson
    • r.mapcalc
    • r.mask
    • r.mfilter
    • r.mode
    • r.neighbors
    • r.null
    • r.out.ascii
    • r.out.bin
    • r.out.gdal
    • r.out.gridatb
    • r.out.mat
    • r.out.mpeg
    • r.out.png
    • r.out.pov
    • r.out.ppm
    • r.out.ppm3
    • r.out.vrml
    • r.out.vtk
    • r.out.xyz
    • r.pack
    • r.param.scale
    • r.patch
    • r.plane
    • r.profile
    • r.proj
    • r.quant
    • r.quantile
    • r.random.cells
    • r.random
    • r.random.surface
    • r.reclass.area
    • r.reclass
    • r.recode
    • r.region
    • r.regression.line
    • r.regression.multi
    • r.relief
    • r.report
    • r.resamp.bspline
    • r.resamp.filter
    • r.resamp.interp
    • r.resamp.rst
    • r.resamp.stats
    • r.resample
    • r.rescale.eq
    • r.rescale
    • r.rgb
    • r.ros
    • r.series.accumulate
    • r.series
    • r.series.interp
    • r.shade
    • r.sim.sediment
    • r.sim.water
    • r.slope.aspect
    • r.solute.transport
    • r.spread
    • r.spreadpath
    • r.statistics
    • r.stats
    • r.stats.quantile
    • r.stats.zonal
    • r.stream.extract
    • r.sun
    • r.sunhours
    • r.sunmask
    • r.support
    • r.support.stats
    • r.surf.area
    • r.surf.contour
    • r.surf.fractal
    • r.surf.gauss
    • r.surf.idw
    • r.surf.random
    • r.terraflow
    • r.texture
    • r.thin
    • r.tile
    • r.tileset
    • r.timestamp
    • r.to.rast3
    • r.to.rast3elev
    • r.to.vect
    • r.topidx
    • r.topmodel
    • r.transect
    • r.univar
    • r.unpack
    • r.uslek
    • r.usler
    • r.viewshed
    • r.volume
    • r.walk
    • r.water.outlet
    • r.watershed
    • r.what.color
    • r.what
  • TODO Convert all ext scripts.

    • TODO Review i.py.
    • TODO Force projection in description file?
    • r_rgb.py
    • r_blend_combine.py
    • r_blend_rgb.py
    • r_drain.py
    • r_horizon.py
    • r_mask.py
    • r_mask_vect.py
    • r_mask_rast.py
    • r_null.py
    • r_statistics.py
    • v_voronoi.py
    • v_build_polylines.py => TO delete.
    • v_in_geonames.py.
    • v_sample.py.
    • v_to_3d.py.
    • v_pack.py.
    • v_what_vect.py => TO delete.
    • v_what_rast_points.py.
    • v_what_rast_centroids.py.
    • v_vect_stats.py
    • v_rast_stats.py
    • v_net.py
    • v_net_alloc.py
    • v_net_allpairs.py
    • v_net_arcs.py
    • v_net_articulation.py
    • v_net_connect.py
    • v_net_connectivity.py
    • v_net_flow.py
    • v_net_iso.py
    • v_net_nodes.py
    • v_net_path.py
    • v_net_steiner.py
    • v_net_visibility.py
  • DONE Support multiple output file raster formats.

    • DONE Add an optional/advanced 'format option' textbox if raster output is detected.
    • DONE Detext file format from extension.
    • DONE Improve GdalUtils to report raster formats that can be created with GDAL.
  • DONE Add GRASS 7.2 new algorithms.

    • DONE Remove r.aspect => r.slope.aspect.
    • DONE Remove r.median.
    • DONE r.out.ascii.
    • DONE r.out.mat.
    • DONE r.out.mpeg.
    • DONE r.out.png.
    • DONE r.out.pop.
    • DONE r.out.ppm3.
    • DONE r.out.vtk.
    • DONE r.out.xyz.
    • DONE r.proj.
    • DONE r.stats.zonal.
    • DONE v.decimate.
    • DONE v.in.e00.
    • DONE v.proj.
  • DONE Support QgsProcessingParameterRange (error in processing/gui/wrappers.py).

    • DONE implement a basic RangePanel/wrapper.
    • DONE Improve Wrapper logic for min/max.
  • DONE Use some raster/vector layers with spacename into their path.

  • DONE Use GRASS --exec instead of GRASS_BATCH_JOB.

  • DONE Improve Grass Path and Binary detection for all OSs.

  • DONE Replace all parameters by QgsProcessingParameters.

    • DONE Support multiple QgsProcessingParameterEnum.
    • DONE Review all ParameterFile
    • DONE Review all OutputDirectory.
      • DONE Convert all OutputDirectory to QgsProcessingParameterFolderDestination
      • DONE Default case:
        • Take the name of the output variable.
        • create a default value as basename.
        • export all layers into the directory with a shell loop.
      • DONE Remove all multipleOutputDir in ext/
      • r.colors: TODO ext | DONE desc | TODO tests.
      • r.texture: DONE ext | DONE desc | TODO tests.
      • r.stats.quantile: DONE ext | DONE desc | TODO tests.
      • r.series.interp: DONE ext | DONE desc | TODO tests.
      • r.mapcalc: DONE ext | DONE desc | TODO tests.
      • i.aster.toar: DONE ext | DONE desc | TODO tests.
      • i.tasscap: DONE ext | DONE desc | TODO tests.
      • i.rectify: DONE ext | DONE desc | TODO tests.
      • i.cca: DONE ext | DONE desc | TODO tests.
      • i.landsat.toar: DONE ext | DONE desc | TODO tests.
      • i.pca: DONE ext | DONE desc | TODO tests.
      • i.topo.corr: DONE ext | DONE desc | TODO tests.
    • DONE Review all OutputFile
      • DONE Replace by QgsProcessingParameterFileDestination
      • DONE QgsProcessingParameterFileDestination should use the file filter in Dialog. Replace fileOut with fileDestination in gui/ParametersUtils.py
  • DONE Remove specific algorithms code in Grass7Algorithm.py (move them in ext).

  • DONE Re-enable GRASS algorithm by default.

  • DONE Support multiple bands input rasters.

  • DONE Better support for files output that are HTML.

    • DONE All html output files will be report outputs.
    • DONE All html output will come as stdout files by default.
    • DONE OutputHtml must not be converted to OutputLayerDefinition.
    • DONE Convert false HTML files to real HTML files.
    • DONE Opens HTML files in Viewer.

Unit tests

i.* modules:

  • i.albedo: needs better data
  • i.aster.toar: needs OutputDir support in tests
  • i.atcorr: OK (basic implementation)
  • i.biomass: OK (basic implementation)
  • i.cca: needs OutputDir support in tests
  • i.cluster: OK (full implementation)
  • i.colors.enhance: needs other raster data
  • i.eb.eta: OK (basic implementation)
  • i.eb.evapfr: needs better data
  • i.eb.hsebal01: OK (basic implementation)
  • i.eb.netrad: OK (basic implementation)
  • i.eb.soilheatflux: OK (basic implementation)
  • i.emissivity: OK (basic implementation)
  • i.evapo.mh: OK (basic implementation)
  • i.evapo.pm: OK (basic implementation)
  • i.evapo.pt: OK (basic implementation)
  • i.evapo.time: broken (don't know why, should work)
  • i.fft: OK (full implementation)
  • i.gensig: OK (full implementation)
  • i.gensigset: OK (full implementation)
  • i.group: OK (full implementation)
  • i.his.rgb: needs better data
  • i.ifft: needs specific raster data
  • i.image.mosaic: OK (basic implementation)
  • i.in.spotvgt: needs probably a true NVDI SPOT file (quite huge for tests).
  • i.landsat.acca: needs better data
  • i.landsat.toar: needs OutputDir support in tests
  • i.maxlik: OK (full implementation)
  • i.modis.qc: OK (full implementation)
  • i.oif: OK (full implementation)
  • i.ortho.camera: not implemented in Processing
  • i.ortho.elev: not implemented in Processing
  • i.ortho.rectify: not implemented in Processing
  • i.pansharpen: OK (full implementation)
  • i.pca: needs OutputDir support in tests
  • i.rectify: needs OutputDir support in tests
  • i.rgb.his: OK (full implementation)
  • i.segment: OK (full implementation)
  • i.smap: OK (full implementation)
  • i.spectral: not implementable in Processing
  • i.target: not implementable in Processing
  • i.tasscap: needs OutputDir support in tests
  • i.topo.corr.ill: OK (basic implementation)
  • i.topo.corr: needs OutputDir support in tests
  • i.vi: OK (basic implementation)
  • i.zc: OK (basic implementation)

r.* modules

Need to write everything

v.* modules

Need to write everything

Other

  • TODO: decide what to do with nviz: nviz_cmd -> G7:m.nviz.image