Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
Update
  • Loading branch information
nyalldawson committed Jun 11, 2020
1 parent 7ccc7ae commit f1dbf4c
Show file tree
Hide file tree
Showing 58 changed files with 254 additions and 141 deletions.
2 changes: 2 additions & 0 deletions src/3d/qgsabstract3dengine.h
Expand Up @@ -41,10 +41,12 @@ namespace Qt3DRender
* \ingroup 3d
* Base class for 3D engine implementation. A 3D engine is responsible for setting up
* rendering with Qt3D. This means mainly:
*
* - creating Qt3D aspect engine and registering rendering aspect
* - setting up a camera, render settings and frame graph
*
* We have two implementations:
*
* - QgsWindow3DEngine - used for rendering on display (has a QWindow that can be embedded into QWidget)
* - QgsOffscreen3DEngine - renders scene to images
*
Expand Down
1 change: 1 addition & 0 deletions src/3d/qgscamerapose.h
Expand Up @@ -33,6 +33,7 @@ class QDomElement;
/**
* \ingroup 3d
* Class that encapsulates camera pose in a 3D scene. The pose is defined with the following parameters:
*
* - center point - towards which point the camera is looking
* - distance from the center point - how far is the camera from the point towards which it is looking
* - pitch angle - vertical rotation of the camera (0 degrees = camera looking down, 90 degrees = camera looking from the side)
Expand Down
1 change: 1 addition & 0 deletions src/3d/symbols/qgslinematerial_p.h
Expand Up @@ -41,6 +41,7 @@ namespace Qt3DRender
* Implementation of material that renders 3D linestrings.
*
* Supports:
*
* - arbitrary line width (in pixels)
* - bevel and miter line joins (including limit for miter join to avoid very long miters on sharp angles)
* - flat line caps
Expand Down
1 change: 1 addition & 0 deletions src/3d/terrain/qgsterraindownloader.h
Expand Up @@ -36,6 +36,7 @@ class QgsCoordinateTransformContext;
* Takes care of downloading terrain data from a publicly available data source.
*
* Currently using terrain tiles in Terrarium format hosted on AWS. More info:
*
* - data format: https://github.com/tilezen/joerd/blob/master/docs/formats.md
* - data sources: https://github.com/tilezen/joerd/blob/master/docs/data-sources.md
* - hosting: https://registry.opendata.aws/terrain-tiles/
Expand Down
1 change: 1 addition & 0 deletions src/analysis/raster/qgsalignraster.h
Expand Up @@ -34,6 +34,7 @@ typedef void *GDALDatasetH SIP_SKIP;
* \ingroup analysis
* \brief QgsAlignRaster takes one or more raster layers and warps (resamples) them
* so they have the same:
*
* - coordinate reference system
* - cell size and raster size
* - offset of the raster grid
Expand Down
24 changes: 12 additions & 12 deletions src/analysis/vector/geometry_checker/qgsgeometrycheck.h
Expand Up @@ -47,27 +47,27 @@ class QgsFeaturePool;
* A new subclass of QgsGeometryCheck needs to be written and at least the following
* abstract methods need to be implemented:
*
* - `compatibleGeometryTypes()`
* - `compatibleGeometryTypes()`
*
* A list of geometry types to which this check applies
*
* - `resolutionMethods()`
* - `resolutionMethods()`
*
* A list of names for (automated) resolution methods that can be used to fix errors of this type
*
* - `description()`
* - `description()`
*
* A description for the geometry check.
*
* - `id()`
* - `id()`
*
* A unique id for this check.
*
* - `checkType()`
* - `checkType()`
*
* One of QgsGeometryCheck.LayerCheck, QgsGeometryCheck.FeatureCheck,QgsGeometryCheck.FeatureNodeCheck
*
* - \link collectErrors() `collectErrors(featurePools, errors, messages, feedback, ids)`\endlink
* - \link collectErrors() `collectErrors(featurePools, errors, messages, feedback, ids)`\endlink
*
* This method will be called to validate geometries. All geometries which should be validated are passed
* into this method with the parameter ids and should be retrieved from the available featurePools to make
Expand All @@ -84,28 +84,28 @@ class QgsFeaturePool;
* A new subclass of QgsGeometryCheckFactory needs to be written and at least the following
* abstract methods need to be implemented:
*
* - \link QgsGeometryCheckFactory::createGeometryCheck() `createGeometryCheck(context, configuration)`\endlink
* - \link QgsGeometryCheckFactory::createGeometryCheck() `createGeometryCheck(context, configuration)`\endlink
*
* Needs to return a new subclassed QgsGeometryCheck object that has been written in the previous step.
*
* - \link QgsGeometryCheckFactory::id() `id()\endlink
* - \link QgsGeometryCheckFactory::id() `id()\endlink
*
* A unique id for this geometry check.
*
* - \link QgsGeometryCheckFactory::description() `description()\endlink
* - \link QgsGeometryCheckFactory::description() `description()\endlink
*
* A description for this geometry check that can be presented to the user for more explanation.
*
* - \link QgsGeometryCheckFactory::isCompatible() `QgsGeometryCheckFactory::isCompatible(layer)`\endlink
* - \link QgsGeometryCheckFactory::isCompatible() `QgsGeometryCheckFactory::isCompatible(layer)`\endlink
*
* Returns a boolean that determines if this check is available for a given layer. This often
* checks for the geometry type of the layer.
*
* - \link QgsGeometryCheckFactory::flags() `flags()`\endlink
* - \link QgsGeometryCheckFactory::flags() `flags()`\endlink
*
* Returns additional flags for a geometry check. If unsure return QgsGeometryCheck.AvailableInValidation.
*
* - \link QgsGeometryCheckFactory::checkType() `checkType()`\endlink
* - \link QgsGeometryCheckFactory::checkType() `checkType()`\endlink
*
* Returns the type of this geometry check.
*
Expand Down
2 changes: 2 additions & 0 deletions src/app/qgslayertreeviewindicatorprovider.h
Expand Up @@ -32,11 +32,13 @@ class QgsMapLayer;
* layer tree indicator providers.
*
* Subclasses must override:
*
* - iconName()
* - tooltipText()
* - acceptLayer() filter function to determine whether the indicator must be added for the layer
*
* Subclasses may override:
*
* - onIndicatorClicked() default implementation does nothing
* - connectSignals() default implementation connects layers to dataSourceChanged()
* - disconnectSignals() default implementation disconnects layers from dataSourceChanged()
Expand Down
1 change: 1 addition & 0 deletions src/app/qgspluginregistry.h
Expand Up @@ -34,6 +34,7 @@ class QString;
* a means to fetch a pointer to a plugin and unload it
*
* plugin key is:
*
* - C++ plugins: base name of plugin library, e.g. libgrassplugin
* - Python plugins: module name (directory) of plugin, e.g. db_manager
*/
Expand Down
22 changes: 15 additions & 7 deletions src/core/geometry/qgsgeometry.h
Expand Up @@ -588,6 +588,7 @@ class CORE_EXPORT QgsGeometry
* subset of useful cases. Examples of these are:
*
* - computing distance between Linestrings that are roughly parallel to each other,
*
* and roughly equal in length. This occurs in matching linear networks.
* - Testing similarity of geometries.
*
Expand Down Expand Up @@ -1591,10 +1592,15 @@ class CORE_EXPORT QgsGeometry
* Attempts to coerce this geometry into the specified destination \a type.
*
* This method will do anything possible to force the current geometry into the specified type. E.g.
*
* - lines or polygons will be converted to points by return either a single multipoint geometry or multiple
*
* single point geometries.
*
* - polygons will be converted to lines by extracting their exterior and interior rings, returning
*
* either a multilinestring or multiple single line strings as dictated by \a type.
*
* - lines will be converted to polygon rings if \a type is a polygon type
* - curved geometries will be segmented if \a type is non-curved.
* - multi geometries will be converted to a list of single geometries
Expand Down Expand Up @@ -2259,13 +2265,15 @@ class CORE_EXPORT QgsGeometry
* \param p2 second geometry object
* \param epsilon maximum difference for coordinates between the objects
* \returns TRUE if objects are
* - polylines and have the same number of points and all
* points are equal within the specified tolerance
* - polygons and have the same number of points and all
* points are equal within the specified tolerance
* - multipolygons and have the same number of polygons, the polygons have the same number
* of rings, and each ring has the same number of points and all points are equal
* within the specified
*
* - polylines and have the same number of points and all
* points are equal within the specified tolerance
* - polygons and have the same number of points and all
* points are equal within the specified tolerance
* - multipolygons and have the same number of polygons, the polygons have the same number
* of rings, and each ring has the same number of points and all points are equal
* within the specified
*
* tolerance
* \since QGIS 2.9
*/
Expand Down
1 change: 1 addition & 0 deletions src/core/geometry/qgsgeos.h
Expand Up @@ -179,6 +179,7 @@ class CORE_EXPORT QgsGeos: public QgsGeometryEngine
* subset of useful cases. Examples of these are:
*
* - computing distance between Linestrings that are roughly parallel to each other,
*
* and roughly equal in length. This occurs in matching linear networks.
* - Testing similarity of geometries.
*
Expand Down
1 change: 1 addition & 0 deletions src/core/geometry/qgsquadrilateral.h
Expand Up @@ -163,6 +163,7 @@ class CORE_EXPORT QgsQuadrilateral
/**
* Set all points
* Returns FALSE if the QgsQuadrilateral is not valid:
*
* - The points do not have the same type
* - The quadrilateral would have auto intersections
* - The quadrilateral has double points
Expand Down
14 changes: 7 additions & 7 deletions src/core/geometry/qgswkbtypes.h
Expand Up @@ -45,16 +45,16 @@ class CORE_EXPORT QgsWkbTypes
/**
* The WKB type describes the number of dimensions a geometry has
*
* - Point
* - LineString
* - Polygon
* - Point
* - LineString
* - Polygon
*
* as well as the number of dimensions for each individual vertex
*
* - X (always)
* - Y (always)
* - Z (optional)
* - M (measurement value, optional)
* - X (always)
* - Y (always)
* - Z (optional)
* - M (measurement value, optional)
*
* it also has values for multi types, collections, unknown geometry,
* null geometry, no geometry and curve support.
Expand Down
2 changes: 2 additions & 0 deletions src/core/layertree/qgslayertreenode.h
Expand Up @@ -32,6 +32,7 @@ class QgsMapLayer;
* \ingroup core
* This class is a base class for nodes in a layer tree.
* Layer tree is a hierarchical structure consisting of group and layer nodes:
*
* - group nodes are containers and may contain children (layer and group nodes)
* - layer nodes point to map layers, they do not contain further children
*
Expand All @@ -58,6 +59,7 @@ class QgsMapLayer;
* file. The storage is not efficient for large amount of data.
*
* Custom properties that have already been used within QGIS:
*
* - "loading" - whether the project is being currently loaded (root node only)
* - "overview" - whether to show a layer in overview
* - "showFeatureCount" - whether to show feature counts in layer tree (vector only)
Expand Down
7 changes: 4 additions & 3 deletions src/core/mesh/qgsmeshdataprovider.h
Expand Up @@ -113,9 +113,10 @@ struct CORE_EXPORT QgsMesh
* Interface for mesh data sources
*
* Mesh is a collection of vertices, edges and faces in 2D or 3D space
* - vertex - XY(Z) point (in the mesh's coordinate reference system)
* - edge - two XY(Z) points (in the mesh's coordinate reference system) representing straight seqment
* - faces - sets of vertices forming a closed shape - typically triangles or quadrilaterals
*
* - vertex - XY(Z) point (in the mesh's coordinate reference system)
* - edge - two XY(Z) points (in the mesh's coordinate reference system) representing straight seqment
* - faces - sets of vertices forming a closed shape - typically triangles or quadrilaterals
*
* Base on the underlying data provider/format, whole mesh is either stored in memory or
* read on demand
Expand Down
1 change: 1 addition & 0 deletions src/core/mesh/qgsmeshlayer.h
Expand Up @@ -437,6 +437,7 @@ class CORE_EXPORT QgsMeshLayer : public QgsMapLayer
/**
* Sets the root items of the dataset group tree item.
* Changes active dataset groups if those one are not enabled anymore :
*
* - new active scalar dataset group is the first root item enabled child
* - new active vector dataset group is none
*
Expand Down
1 change: 1 addition & 0 deletions src/core/mesh/qgsmeshlayertemporalproperties.h
Expand Up @@ -29,6 +29,7 @@
*
*
* The time in a mesh layer is defined by :
*
* - a reference time provided by the data, the project or the user
* - each dataset is associated with a relative times
* - time extent is defined by the first time and the last time of all dataset
Expand Down
4 changes: 2 additions & 2 deletions src/core/pal/palexception.h
Expand Up @@ -110,9 +110,9 @@ namespace pal
*
* It can be thrown by :
*
* - pal::Layer::setFeatureLabelSize if either the height or the width of the label is < 0
* - pal::Layer::setFeatureLabelSize if either the height or the width of the label is < 0
*
* - pal::Layer::setFeatureDistlabel is distlable < 0
* - pal::Layer::setFeatureDistlabel is distlable < 0
*/
class ValueNotInRange : public std::exception
{
Expand Down
2 changes: 2 additions & 0 deletions src/core/qgsconnectionpool.h
Expand Up @@ -39,6 +39,7 @@
* Template that stores data related to a connection to a single server or datasource.
*
* It is assumed that following functions exist:
*
* - void qgsConnectionPool_ConnectionCreate(QString name, T& c) ... create a new connection
* - void qgsConnectionPool_ConnectionDestroy(T c) ... destroy the connection
* - QString qgsConnectionPool_ConnectionToName(T c) ... lookup connection's name (path)
Expand All @@ -47,6 +48,7 @@
*
* Because of issues with templates and QObject's signals and slots, this class only provides helper functions for QObject-related
* functionality - the place which uses the template is resonsible for:
*
* - being derived from QObject
* - calling initTimer( this ) in constructor
* - having handleConnectionExpired() slot that calls onConnectionExpired()
Expand Down
1 change: 1 addition & 0 deletions src/core/qgscoordinatereferencesystem.h
Expand Up @@ -471,6 +471,7 @@ class CORE_EXPORT QgsCoordinateReferenceSystem
* Set up this CRS from a string definition.
*
* It supports the following formats:
*
* - "EPSG:<code>" - handled with createFromOgcWms()
* - "POSTGIS:<srid>" - handled with createFromSrid()
* - "INTERNAL:<srsid>" - handled with createFromSrsId()
Expand Down
11 changes: 6 additions & 5 deletions src/core/qgsdataitem.h
Expand Up @@ -426,11 +426,12 @@ class CORE_EXPORT QgsDataItem : public QObject

/**
* Safely delete the item:
* - disconnects parent
* - unsets parent (but does not remove itself)
* - deletes all its descendants recursively
* - waits until Populating state (createChildren() in thread) finished without blocking main thread
* - calls QObject::deleteLater()
*
* - disconnects parent
* - unsets parent (but does not remove itself)
* - deletes all its descendants recursively
* - waits until Populating state (createChildren() in thread) finished without blocking main thread
* - calls QObject::deleteLater()
*/
virtual void deleteLater();

Expand Down
4 changes: 3 additions & 1 deletion src/core/qgsdistancearea.h
Expand Up @@ -290,8 +290,10 @@ class CORE_EXPORT QgsDistanceArea
* \return p2 - location of projected point as longitude/latitude.
* \note code (and documentation) taken from rttopo project
* https://git.osgeo.org/gogs/rttopo/librttopo
*
* - spheroid_project.spheroid_project(...)
* - Valid bounds checking for degrees (latitude=+- 85.05115) is based values used for
* - Valid bounds checking for degrees (latitude=+- 85.05115) is based values used for
*
* -> 'WGS84 Web Mercator (Auxiliary Sphere)' calculations
* --> latitudes outside these bounds cause the calculations to become unstable and can return invalid results
* \since QGIS 3.0
Expand Down
12 changes: 6 additions & 6 deletions src/core/qgsfeaturepickermodelbase.h
Expand Up @@ -73,16 +73,16 @@ class CORE_EXPORT QgsFeaturePickerModelBase : public QAbstractItemModel SIP_ABST
/**
* The display expression will be used for
*
* - displaying values in the combobox
* - filtering based on filterValue
* - displaying values in the combobox
* - filtering based on filterValue
*/
QString displayExpression() const;

/**
* The display expression will be used for
*
* - displaying values in the combobox
* - filtering based on filterValue
* - displaying values in the combobox
* - filtering based on filterValue
*/
void setDisplayExpression( const QString &displayExpression );

Expand Down Expand Up @@ -184,8 +184,8 @@ class CORE_EXPORT QgsFeaturePickerModelBase : public QAbstractItemModel SIP_ABST
/**
* The display expression will be used for
*
* - displaying values in the combobox
* - filtering based on filterValue
* - displaying values in the combobox
* - filtering based on filterValue
*/
void displayExpressionChanged();

Expand Down
2 changes: 2 additions & 0 deletions src/core/qgsfields.h
Expand Up @@ -35,8 +35,10 @@ class QgsFieldsPrivate;
* Container of fields for a vector layer.
*
* In addition to storing a list of QgsField instances, it also:
*
* - allows quick lookups of field names to index in the list
* - keeps track of where the field definition comes from (vector data provider, joined layer or newly added from an editing operation)
*
* \note QgsFields objects are implicitly shared.
*/
class CORE_EXPORT QgsFields
Expand Down
5 changes: 3 additions & 2 deletions src/core/qgsmaplayerdependency.h
Expand Up @@ -27,8 +27,9 @@
* This class models dependencies with or between map layers.
* A dependency is defined by a layer ID, a type and an origin.
* The two combinations of type/origin that are currently supported are:
* - PresenceDependency && FromProvider: virtual layers for instance which may depend on other layers already loaded to work
* - DataDependency && FromUser: dependencies given by the user, mainly to represent database triggers
*
* - PresenceDependency && FromProvider: virtual layers for instance which may depend on other layers already loaded to work
* - DataDependency && FromUser: dependencies given by the user, mainly to represent database triggers
*
* \since QGIS 3.0
*/
Expand Down
1 change: 1 addition & 0 deletions src/core/qgsmaprendererjob.h
Expand Up @@ -78,6 +78,7 @@ struct LayerRenderJob
* Selective masking handling.
*
* A layer can be involved in selective masking in two ways:
*
* - One of its symbol layer masks a symbol layer of another layer.
* In this case we need to compute a mask image during the regular
* rendering pass that will be stored here;
Expand Down

0 comments on commit f1dbf4c

Please sign in to comment.