18630 Commits

Author SHA1 Message Date
Nyall Dawson
df28e637cd Fix see also link 2020-12-14 16:49:48 +10:00
Nyall Dawson
53831c6067 Add some useful methods to resize QgsFeature attributes without clearing existing attributes 2020-12-14 16:49:48 +10:00
Nyall Dawson
578813ac78 Geocoder algorithms can be run in in-place mode too 2020-12-14 16:49:48 +10:00
Nyall Dawson
6ae7a17bf0 [API] Add an adapter class QgsBatchGeocodeAlgorithm which creates
a batch geocoding algorithm from a QgsGeocoderInterface

Example usage:

  # create a class which implements the QgsGeocoderInterface interface:
  class MyGeocoder(QgsGeocoderInterface):

     def geocodeString(self, string, context, feedback):
        # calculate and return results...

  my_geocoder = MyGeocoder()

  # create an algorithm which allows for batch geocoding operations using the custom geocoder interface
  # and implement the few required pure virtual methods
  class MyGeocoderAlgorithm(QgsBatchGeocodeAlgorithm):

      def __init__(self):
          super().__init__(my_geocoder)

      def displayName(self):
          return "My Geocoder"

      def name(self):
          return "my_geocoder_alg"

      def createInstance(self):
          return MyGeocoderAlgorithm()

      # optionally, the group(), groupId(), tags(), shortHelpString() and other metadata style methods can be overridden and customized:
      def tags(self):
          return 'geocode,my service,batch'
2020-12-14 16:49:48 +10:00
Matthias Kuhn
0d55e61145 Add QgsRasterDataProvider::Capability::ReloadData for gdal, ams and wcs provider 2020-12-14 09:02:16 +10:00
Matthias Kuhn
a83319a075 Add QgsVectorDataProvider::Capability::ReloadData and return it for appropriate providers
This allows to only show reload actions for data providers that actually support it.
2020-12-14 09:02:16 +10:00
Matthias Kuhn
d94efac86b Add todo for QGIS 4 2020-12-14 09:02:16 +10:00
Nyall Dawson
932e70b247 Dox grammar 2020-12-14 08:51:51 +10:00
nirvn
e1933c85c0 [FEATURE][map overview] Support zooming in/out by scrolling mouse wheel over map overview panel 2020-12-10 16:47:36 +07:00
Nyall Dawson
0ab761c210 Add proper method to determine whether a symbol uses map unit sizes,
and use this to determine whether a legend item needs updating
as a result of a map change

This results in a HUGE speed up when loading large projects where
symbols don't use Millimeter based sizes, as the previous code
assumed only that any non-millimeter size was a map unit based size.
2020-12-10 04:04:17 +10:00
Nyall Dawson
39307900c6 When a point cloud is first added to a project, default to setting
a 3d renderer on it to match its 2d renderer

It just makes sense!
2020-12-10 04:03:40 +10:00
Nyall Dawson
da51a5a8d0 It's FAR too expensive to construct a QgsSettings object for every symbol node, especially for complex
projects. So only read the valid size ranges once, and store them for subsequent use
2020-12-09 18:18:27 +10:00
NEDJIMAbelgacem
14ff8e3489 initial implementation 2020-12-08 16:29:14 +01:00
NEDJIMAbelgacem
a5329d4f19 Add FPS counter check box 2020-12-08 16:28:49 +01:00
Nyall Dawson
94522cf844 Add option to QgsVectorFileWriter to prefer using field aliases as output field name 2020-12-08 19:52:22 +10:00
Nyall Dawson
928b00a6e6 Add some more options to control how a preview pixmap for a color ramp is generated 2020-12-08 05:59:56 +10:00
NEDJIMAbelgacem
752c42c3d7 Fix categories filtering performance 2020-12-07 15:17:15 +01:00
NEDJIMAbelgacem
e1776dfcad fix broken see also links 2020-12-07 15:17:15 +01:00
NEDJIMAbelgacem
df3c30e113 Add docs 2020-12-07 15:17:15 +01:00
NEDJIMAbelgacem
e3dcb5b028 categories selection handling (visible/hidden) 2020-12-07 15:17:15 +01:00
NEDJIMAbelgacem
69f4476b59 initial 3d classification rendering implementation 2020-12-07 15:17:15 +01:00
NEDJIMAbelgacem
85e0e7652f adjust screen space error from UI 2020-12-07 15:16:50 +01:00
nirvn
04b9c6ab00 [processing] Add a warning-level information message feedback 2020-12-07 14:15:35 +07:00
Nyall Dawson
344bc5f909 Ensure that accessing QgsFieldFormatterRegistry is thread safe 2020-12-07 16:58:46 +10:00
Nyall Dawson
5be99bd5fe Show data type, scale, offset in metadata for point cloud layers 2020-12-07 12:08:35 +10:00
Nyall Dawson
0708f813f2 Add method to retrieve original metadata from point cloud files,
and expose some more useful metadata in layer properties (las version,
software, creation date)
2020-12-07 12:08:35 +10:00
Nyall Dawson
f21ca86a91 Cleanup api, fix crash 2020-12-07 11:42:39 +10:00
Nyall Dawson
60ce8eb9af Use new api to return nice legend items for raster contour renderer
Instead of no legend, we now create a legend with the contour symbols!
2020-12-07 11:42:39 +10:00
Nyall Dawson
6932985d82 Add api to allow raster layer renderers to create different legend node types,
instead of forcing them to always use the solid color blocks created by QgsRasterSymbolLegendNode
2020-12-07 11:42:39 +10:00
Julien Cabieces
c66d36c16f [processing][OTB] Don't remove parameter if its value is 0 2020-12-07 10:08:02 +10:00
Alex
50696f9936
[processing] fix exception when clicking help button in modeler
Fixes #40453
2020-12-07 09:26:17 +10:00
dhdeangelis
cc0f186b09 updated Swedish national catalogue 2020-12-07 09:09:06 +10:00
Loïc Bartoletti
fe80965d50 [API] Add angleBisector method 2020-12-07 08:40:59 +10:00
Matthias Kuhn
e93bda84e2
Merge pull request #40452 from m-kuhn/locator_result_get_user_data
Add getter for QgsLocatorResults.userData
2020-12-06 12:09:04 +01:00
Matthias Kuhn
4edd44ae63 Add getter for QgsLocatorResults.userData
References https://github.com/opengisch/qgis-swiss-locator/issues/9
2020-12-06 08:43:56 +01:00
Nyall Dawson
4d9bc5bac3 Move responsibility for determining whether a map renderer job requires
flattening onto a temporary image to the QgsMapLayerRenderer subclasses

This avoids the generic QgsMapRendererJob class from having hardcoded
layer type dependent behavior, and instead moves that layer-type specific
logic to the subclasses designed for that particular layer
2020-12-05 05:51:38 +10:00
Nyall Dawson
da162726e4 Support contrast enhancement and manual selection of RGB attributes
in 3d RBB point cloud renderer
2020-12-04 16:07:07 +07:00
Alessandro Pasotti
6d2be40017
Merge pull request #40399 from elpaso/server-profiler
Server profiler
2020-12-04 09:33:18 +01:00
Nyall Dawson
def587fa77 [pointclouds] Add an extent only 2d renderer for point clouds
Useful when you just want an overview of the bounds of the layer in a
2d map. Also potentially usable as a temporary renderer for las/laz
files while we build the indexed representation of the file in the
background.
2020-12-04 17:44:23 +10:00
Nyall Dawson
2f14a53467 Cleanup identification handling of 3d point cloud symbol subclasses,
and fix loss of symbol type when saving/restoring projects
2020-12-04 16:36:41 +10:00
NEDJIMAbelgacem
14a770282b fix doc 2020-12-03 22:27:20 +01:00
NEDJIMAbelgacem
05d6edc604 refactor storing rendering style enum 2020-12-03 22:27:20 +01:00
NEDJIMAbelgacem
7f26477c81 add comparison operator for QgsColorRampShader 2020-12-03 22:27:20 +01:00
NEDJIMAbelgacem
955eaff38f Address reviews 2020-12-03 22:27:20 +01:00
NEDJIMAbelgacem
d6a6d9ba64 fix SIP 2020-12-03 22:27:20 +01:00
NEDJIMAbelgacem
70f96b0179 Use rendering context instead of passing the symbol to the handler 2020-12-03 22:27:20 +01:00
NEDJIMAbelgacem
05149fa76f move handler to qgspointcloud3dsymbol_p 2020-12-03 22:27:20 +01:00
NEDJIMAbelgacem
a271e819bb split the point cloud handler 2020-12-03 22:27:20 +01:00
NEDJIMAbelgacem
27221617d6 try to fix compilation 2020-12-03 22:27:20 +01:00
NEDJIMAbelgacem
67a4cc44ce refactor the attributes and vertex buffer code 2020-12-03 22:27:20 +01:00