def initAlgorithm(self, config=None): self.addParameter(QgsProcessingParameterRasterLayer( self.INPUT, self.tr('Input file'))) self.addParameter(QgsProcessingParameterBoolean( self.PRJ_FILE_CREATE, self.tr('Create also .prj file'), False)) self.addOutput(QgsProcessingOutputFile( self.WORLD_FILE, self.tr('World file'))) self.addOutput(QgsProcessingOutputFile( self.PRJ_FILE, self.tr('ESRI Shapefile prj file')))
def test_file_output_mimetypes(): """ Test file output mimetype """ outdef = QgsProcessingOutputFile("OUTPUT", "test output file") context = QgsProcessingContext() context.store_url = "store:{file}" context.workdir = "/path/to/workdir" out = parse_output_definition(outdef) output = processing_to_output('file.png', outdef, out, output_uri=None, context=context) assert isinstance(output, ComplexOutput) assert output.as_reference assert output.url == "store:file.png" assert output.output_format == 'image/png' output = processing_to_output('binaryfile', outdef, out, output_uri=None, context=context) assert output.output_format == 'application/octet-stream'
def initAlgorithm(self, config=None): """Set up of the algorithm.""" self.addParameter( QgsProcessingParameterString( self.URL, self.tr('URL, with the query encoded'))) self.addOutput(QgsProcessingOutputFile(self.OUTPUT, self.tr('Output')))
def initAlgorithm( self, config=None ): """ Virtual override see https://qgis.org/api/classQgsProcessingAlgorithm.html """ self.addOutput(QgsProcessingOutputFile(self.OUTPUT, 'JSON output file', ))
def initAlgorithm(self, config=None): self.addParameter(QgsProcessingParameterRasterLayer(self.INPUT, self.tr('Input layer'))) self.addParameter(QgsProcessingParameterBand(self.BAND, self.tr('Band number'), parentLayerParameterName=self.INPUT)) self.addParameter(QgsProcessingParameterBoolean(self.CSV, self.tr('Output comma-separated values'), defaultValue=False)) self.addParameter(QgsProcessingParameterFileDestination(self.OUTPUT, self.tr('XYZ ASCII file'), self.tr('CSV files (*.csv)'))) self.addOutput(QgsProcessingOutputFile(self.OUTPUT, self.tr('XYZ ASCII file')))
def test_file_output_mimetypes(): """ Test file output mimetype """ outdef = QgsProcessingOutputFile("OUTPUT","test output file") context = QgsProcessingContext() context.workdir = "/path/to/workdir" out = parse_output_definition(outdef) output = processing_to_output('file.png', outdef, out, output_uri=None, context=context) assert output.output_format == 'image/png' output = processing_to_output('binaryfile', outdef, out, output_uri=None, context=context) assert output.output_format == 'application/octet-stream'
def initAlgorithm(self, config=None): self.addParameter( QgsProcessingParameterFeatureSource(self.INPUT, self.tr('Input layer'))) self.addParameter( QgsProcessingParameterEnum(self.PLOT_TYPE, self.tr('Plot type'), options=self.PLOT_TYPE_OPTIONS)) self.addParameter( QgsProcessingParameterString(self.PLOT_TITLE, self.tr('Plot title'), optional=True)) self.addParameter( QgsProcessingParameterField(self.XFIELD, self.tr('X Field'), parentLayerParameterName=self.INPUT, type=QgsProcessingParameterField.Any, optional=True)) self.addParameter( QgsProcessingParameterField(self.YFIELD, self.tr('Y Field'), parentLayerParameterName=self.INPUT, type=QgsProcessingParameterField.Any, optional=True)) self.addParameter( QgsProcessingParameterEnum(self.IN_COLOR, self.tr('Color'), optional=True, options=self.IN_COLOR_OPTIONS)) self.addParameter( QgsProcessingParameterString( self.IN_COLOR_HTML, self. tr('Color (any valid HTML color) If set, this is used instead of the color set in the previous input.' ), optional=True)) self.addParameter( QgsProcessingParameterFileDestination( self.OUTPUT_HTML_FILE, self.tr('HTML File'), self.tr('HTML files (*.html)'))) # need to add an output for it to allow to see it in Processus results viewer self.addOutput( QgsProcessingOutputHtml( self.OUTPUT_HTML_FILE, self.tr('Dataplotly - Generic plot HTML output'))) # Add an file to return a response in JSON format self.addParameter( QgsProcessingParameterFileDestination( self.OUTPUT_JSON_FILE, self.tr('JSON file'), self.tr('JSON Files (*.json)'))) # need to add an output for it to allow to see it in Processus results viewer self.addOutput( QgsProcessingOutputFile( self.OUTPUT_JSON_FILE, self.tr('Dataplotly - Generic plot JSON output')))