183 Commits

Author SHA1 Message Date
Denis Rouzaud
1bfa539df1 [sipify] remove extra blank line 2017-04-24 07:39:30 +02:00
Denis Rouzaud
8f2a5c7c00 sipify all 2017-04-20 14:21:36 +02:00
Nyall Dawson
3535ee2d55 Allow QgsDataProvider access through QgsMapLayer
Avoids having to cast to QgsRasterLayer/QgsVectorLayer before
accessing the common QgsDataProvider members
2017-04-18 11:14:01 +10:00
Nyall Dawson
eff5a823c9 [sipify] Convert "\a arg" to "`arg`" when processing Docstrings
Allows argument names to be highlighted in Python docs
2017-04-17 13:49:59 +10:00
Nyall Dawson
6a72c945af [sipify] Don't autocreate Docstrings for overridden members
Skip the autocreated Docstrings with rtype annotations if the
member is overridden - better to use the base class
Docstring in this case.
2017-04-17 11:03:02 +10:00
Nyall Dawson
f2a7dcbdd7 Rename QgsMapLayer::metadata -> htmlMetadata()
Frees up metadata() for use as a structured metadata getter
2017-04-10 18:45:00 +10:00
Nyall Dawson
8cf5860d72 Fix missing sip cast for QgsHillshadeRenderer 2017-04-10 08:52:32 +10:00
Nyall Dawson
bfd37e1122 [sipify] Add return types for functions in docstrings
and change \return -> :return: in docystrings
2017-04-08 09:48:48 +10:00
Matthias Kuhn
58d2d6d7f9 sipify_all 2017-04-07 12:26:30 +02:00
Nyall Dawson
ca8e1d343d [sipify] Replace nullptr with None in docstrings
Since nullptr has no meaning to Python devs
2017-04-07 09:21:26 +10:00
Nyall Dawson
5ccc6cccef Update api break docs, sipify QgsRasterFileWriter 2017-04-07 09:21:26 +10:00
Nyall Dawson
110828feab [FEATURE] Background saving of raster layers
Use the task manager framework to handle saving of raster layers
in the background
2017-04-07 08:18:57 +10:00
Nyall Dawson
e8ef91ce98 Cleanup QgsRasterDataProvider/QgsRasterLayer progress reporting
Instead of progress changed signals on the provider/layer level,
instead use QgsFeedback arguments for methods which previously
emitted progress changed signals
2017-04-03 12:08:08 +10:00
Nyall Dawson
e400ab6249 Allow cancelation of raster stats/histogram operations 2017-04-03 12:08:08 +10:00
Nyall Dawson
d03844d24e [FEATURE] Allow classifying paletted renderer using unique values
from a raster layer

Adds an easy way to style discrete rasters such as landuse classes
using the Paletted renderer. Just select the Paletted renderer,
pick a band, then hit the "Add Unique Values" button. The unique
pixel values will be fetched from the layer and a color assigned
to each using the currently selected color ramp.

Fix #14845

Sponsored by
- Stéphane Henriod
- Satelligence (http://satelligence.com/)
- Bird's Eye View (https://www.birdseyeviewgis.com/)
- + other anonymous backers
2017-04-03 12:08:08 +10:00
Nyall Dawson
c8b728a361 No lies! 2017-04-03 12:08:07 +10:00
Nyall Dawson
7eb63d99dc [FEATURE] Implement saving paletted raster renderer color tables
Use the .clr/gdal file format, but add the labels on the ends of
the lines. Seems other importers like ArcMap just ignore these.
2017-04-03 12:07:50 +10:00
Nyall Dawson
d542a1a442 Add method to load paletted renderer classes from file 2017-04-03 12:07:50 +10:00
Nyall Dawson
a6d3af7c26 Add method to read paletted color data from string 2017-04-03 12:07:50 +10:00
Nyall Dawson
93cfde0c09 Enable reordering of paletted raster entries 2017-04-03 12:07:50 +10:00
Nyall Dawson
bfe96214b2 [FEATURE] Add a color ramp combo to paletted raster renderer
Allows rapid recoloring of palette to match a color ramp
2017-04-03 12:07:50 +10:00
Nyall Dawson
b7cd9dcb56 Rework paletted raster renderer widget
- Switch to a real model
- Allow adding new rows and deleting multiple selected rows
- Allow changing colors inline in style dock (no modal color picker)
2017-04-03 12:07:50 +10:00
Nyall Dawson
a157db7627 Refactor QgsPalettedRasterRenderer to allow "gaps" in pixel values
Previously the renderer required that pixel values followed
sequential numerical order. This refactor allows values to
be skipped, so that only certain color index will be rendered.
2017-04-03 12:07:50 +10:00
Nyall Dawson
634d5ffb8a Mark QgsRasterRenderer::legendSymbologyItems as /Out/ in sip 2017-03-23 10:15:30 +10:00
Denis Rouzaud
7812d4fb17 remove the-prefix from source code
this might result in variables having the same name as some methods
2017-02-21 18:14:58 +01:00
Juergen E. Fischer
72342557c3 use constant for raster iterator default (followup baa5d90, f924578) 2017-02-21 13:46:11 +01:00
Juergen E. Fischer
baa5d90ddc [FEATURE] allow to configure maximum request size for WMS requests (fixes #16182)
Hardwired setting was 2000, which is still default.
2017-02-21 01:01:29 +01:00
Nyall Dawson
45fc6dc2fe Remove duplicate QgsRasterLayer constructor
Avoids confusing overload behavior when constructing QgsRasterLayers
from c++ code. This extra constructor was causing character literals
to be converted to a boolean loadDefaultStyle flag instead
of being used as the provider key. Removing the extra constructor
avoids this, and removes some duplicate code.
2017-01-27 11:13:52 +10:00
Juergen E. Fischer
6a56cb0dd0 updates and fixes for windows qt5/py3 build 2017-01-24 01:25:59 +01:00
Denis Rouzaud
4c642ac664 fix typo 2017-01-20 15:17:58 +01:00
Denis Rouzaud
4c3968b9aa more spelling fixes 2017-01-20 15:06:09 +01:00
Martin Dobias
ff8d912147 Make the one band raster creation method return data provider 2017-01-19 15:46:46 +08:00
Martin Dobias
7b27079de9 Convenience API call to create empty raster file 2017-01-19 15:46:46 +08:00
Martin Dobias
15cd8331ac Make setEditable() return true/false to indicate success/error 2017-01-19 15:46:46 +08:00
Martin Dobias
f6f6ebdb44 [FEATURE] API to enable/disable editing of raster data
To create a 2x2 raster block with one byte per pixel:

```
block = QgsRasterBlock(Qgis.Byte, 2, 2)
block.setData(b'\xaa\xbb\xcc\xdd')
```

To overwrite existing raster data at position 0,0 by the 2x2 block:

```
provider.setEditable(True)
provider.writeBlock(block, band, 0, 0)
provider.setEditable(False)
```
2017-01-19 15:46:46 +08:00
Martin Dobias
90d233ad30 Remove draw() method from QgsRasterDataProvider interface (#4017)
It was redundant in the API - one always wants to use block() to get data
2017-01-18 13:32:26 +08:00
Martin Dobias
433d04b68e QgsRasterBlock::data() for efficient access to pixel data also in Python (#4009)
Also adds some unit tests and API cleanups
2017-01-18 09:52:45 +08:00
Denis Rouzaud
b119744773 replace cancelling, cancelled and cancellation by canceling, canceled and cancelation, respectively (#4000)
* replace cancelling and cancelled by canceling and canceled, respectively

see https://github.com/qgis/qgis3_UIX_discussion/issues/19

* replace cancellation by cancelation
2017-01-16 22:27:14 +01:00
Denis Rouzaud
0a63d1f2c2 [spellcheck] properly look into various cases and add more fixes" 2017-01-16 16:39:20 +01:00
nirvn
181f84b86f [raster] move pseudocolor renderer classification out of gui into core 2016-12-27 10:16:51 +07:00
Juergen E. Fischer
e5a4426dce more spelling fixes 2016-12-26 23:36:16 +01:00
Even Rouault
532eb58d1f [FEATURE] Implement raster auto-stretching when updating canvas
This commit implements the improvements described at:
https://lists.osgeo.org/pipermail/qgis-developer/2016-September/044393.html

The QgsRasterMinMaxWidget now offers a seetting to specify that the statistics
should be computed each time the canvas extent changes.

Other changes:
- the content of the QgsRasterMinMaxWidget is now persistant.
- there is no longer any Load button. The global Apply / OK button of the raster
  properties dialog has this effect.
- the default "limits" for single band raster is now MinMax and not CumulativeCut
- the default "limits" can be configured for single band, multi band single byte and
  multi band multi byte
- "Strech using current extent" honours the "limits" instead of forcing min/max.
2016-12-16 12:36:06 +01:00
nirvn
f02e4ad98f [FEATURE][raster] transparency support for paletted renderer 2016-12-14 14:24:02 +07:00
Mathieu Pellerin
eb85e3fcfa [raster] migrate singleband pseudo-color renderer color ramp widget (#3817) 2016-12-02 12:48:45 +07:00
Alessandro Pasotti
61b599ed0e Added histogram values to the bindings 2016-11-29 15:44:34 +01:00
Alexander Bruy
dac03d5ce8 use default QString() constructor instead of ""
improve doxygen docs
2016-11-02 14:44:20 +02:00
Alexander Bruy
75b23cb55c update Python bindings 2016-11-02 14:44:20 +02:00
Nyall Dawson
44289084e9 Optimise passing of variables by ref/value 2016-10-24 10:36:23 +10:00
Nyall Dawson
3272964f58 Fix classes which violate the rule-of-three
(identified using clazy analyser)
2016-10-24 10:36:22 +10:00
Juergen E. Fischer
ffaffadbfa fix typos 2016-10-01 17:58:12 +02:00