51 Commits

Author SHA1 Message Date
Nyall Dawson
2872f69e20 Reluctantly participate in the Americanization of the world 2017-12-23 18:48:03 +11:00
Nyall Dawson
c7e37e89eb [sipify] Correctly convert doxygen warning blocks to sphinx warnings 2017-12-23 18:48:03 +11:00
Nyall Dawson
87b8a370e9 Expand QgsCoordinateTransform docs 2017-12-23 18:48:03 +11:00
Denis Rouzaud
90e5196996 run sipify 2017-12-19 14:55:46 -04:00
Nyall Dawson
c7017914a0 Doxygen 2017-12-19 08:48:32 +10:00
Nyall Dawson
f216b188d6 Move all datum transform related methods to QgsDatumTransform 2017-12-19 08:47:02 +10:00
Nyall Dawson
25c3e135b0 Move datum transform structs out to their own header, to avoid
need to include private header file
2017-12-18 21:19:02 +10:00
Denis Rouzaud
c604d2dda6 run sipify 2017-12-15 22:13:44 -04:00
Denis Rouzaud
f2b3ed0a9b run sipify 2017-12-15 11:12:19 -04:00
Nyall Dawson
318735271e Add method to retrieve datum transform ID from a proj string 2017-12-15 16:42:40 +10:00
Nyall Dawson
13d1786265 Sipify 2017-12-15 14:20:57 +10:00
Nyall Dawson
86d9492372 Remove context-unaware QgsCoordinateTransform constructors from Python bindings
This forces Python code and plugins to become datum transform
aware, and given that upgrading python code is easy (just
add QgsProject.instance() as a new argument to the constructor)
it's relatively painless to force this on PyQGIS users.

Also fix upgrade the easy QgsCoordinateTransform c++ constructors
where the project is available, or where using QgsProject::instance()
is safe to do.

For others, just avoid the deprecated warnings until we can
get access to the correct project instance where the transform
is being constructed.
2017-12-15 14:13:22 +10:00
Nyall Dawson
91e0afb613 Add QgsCoordinateTransformContext arguments to QgsCoordinateTransform constructor
And automatically retrieve correct datum transforms for the
transform, based on the information in the context.

Also add a convenience constructor which takes a QgsProject
instance instead of a QgsCoordinateTransformContext and which
automatically retrieves the project's transform context and uses
that. This is designed to make it easy to upgrade existing
Python code (by adding just QgsProject.instance() to the transform
constructors).
2017-12-15 14:12:16 +10:00
Alessandro Pasotti
bfa857bb97 [bugfix] Restore binding for QgsCoordinateTransform
Fixes #17600

Binding was lost in commit 10d34ece02bb765f5d9d88bb0524c909235fb0d7
2017-12-11 12:32:46 +01:00
Denis Rouzaud
e48cf98edb run sipify 2017-12-06 07:19:50 -04:00
Matthias Kuhn
a9d7630a69 Rename QgsPointV2 to QgsPoint and QgsPoint to QgsPointXY
Because 3D coordinates should be the default.

References https://github.com/qgis/qgis3.0_api/issues/36
2017-06-02 19:53:37 +02:00
Denis Rouzaud
cc887c631b [sipify] use a distinct header to simplify includes
there was an issue in libdxf which includes qgslogger in debug mode
and qgsdebug.h includes qgis.h include qgswkbtypes.h (which geometry directory was not listed in libdxrw included paths)
2017-05-04 10:49:17 +02:00
Matthias Kuhn
28a21209b9 [sipify] seealso 2017-04-30 16:52:05 +02:00
Denis Rouzaud
4cc4a27068 [sipify] operators, remove argument
* skip some operators
 * allow to remove an argument with SIP_PYARGREMOVE
2017-04-26 15:06:16 +02:00
Denis Rouzaud
10d34ece02 sipify batch
* QgsBearingUtils
    * QgsBrowserModel
    * QgsColorScheme, QgsColorSchemeRegistry
    * QgsContextHelp
    * QgsCoordinateReferenceSystem
    * QgsCoordinateTransform
    * QgsFeedback
2017-04-24 09:32:39 +02:00
Denis Rouzaud
0a63d1f2c2 [spellcheck] properly look into various cases and add more fixes" 2017-01-16 16:39:20 +01:00
Nyall Dawson
4a3924ca3f Remove the extra QgsCoordinateTransform constructors
...and leave only:

QgsCoordinateTransform( const QgsCoordinateReferenceSystem& source,
                        const QgsCoordinateReferenceSystem& destination );

The other constructors were not used anyway in QGIS code,
had awkward/confusing API, and no unit tests.
2016-07-27 07:10:46 +10:00
Nyall Dawson
e6df492fdb Add missing docs, refine docs for QgsCoordinateTransform 2016-07-17 16:38:28 +10:00
Nyall Dawson
ffa9b9b676 API breaks and cleanups for QgsCoordinateTransform
- isInitialised() has been renamed to isValid()
- theCRS parameter in setSourceCrs has been renamed to 'crs'
- setDestCRS() has been renamed to setDestinationCrs() for consistency
- destCRS() has been renamed to destinationCrs() for consistency
- theSource, theDest, theSourceSrsId, theDestSrsId, theSourceWkt,
theDestWkt, theSourceCRSType parameters in the QgsCoordinateTransform
constructors have been renamed to source, destination, sourceSrsId,
destinationSrsId, sourceWkt, destinationWkt, sourceCrsType respectively
- 'p' argument in transform() has been renamed to 'point', 'theRect' to
'rectangle', 'poly' to 'polygon'
- setDestCRSID has been removed, use setDestinationCrs() instead
- 'theNode', 'theDoc' parameters in readXML and writeXML have been
renamed to 'node' and 'document' respectively
- readXML() and writeXML() have been renamed to readXml() and writeXml()
for consistency
2016-07-16 16:33:04 +10:00
Nyall Dawson
b18fcc0ddf Remove QgsCoordinateTransform::clone()
Just use direct copies instead
2016-07-16 14:16:00 +10:00
Nyall Dawson
736aab195f Make QgsCoordinateTransform implicitly shared, no longer a QObject
There was no code in core using the signals/slots associated with
QgsCoordinateTransform, and little reason to keep the class a
QObject. Making it not a QObject simplifies code and allows
QgsCoordinateTransform objects to be easily copied and passed
around without complication.
2016-07-16 10:07:10 +10:00
Nyall Dawson
7d2027faa9 Fix most remaining methods which return a reference to
QgsCoordinateReferenceSystem or which take a pointer to a
CRS
2016-07-15 06:01:39 +10:00
Juergen E. Fischer
5c4bf99ce2 debian packaging update: manually merge some changes from PR#2818 and
some spelling fixes.
2016-02-20 16:55:16 +01:00
Juergen E. Fischer
a90be95f7b sip sync 2016-02-14 03:50:49 +01:00
Nyall Dawson
c3a57434d9 Fix clazy 'pass small and trivially-copyable type by value' warnings 2016-02-02 19:47:21 +11:00
Juergen E. Fischer
ae52aabd70 more spelling fixes 2016-01-24 20:16:28 +01:00
Nyall Dawson
766bfa1a7f Fix some more old style cast and float comparison warnings 2015-12-31 07:27:58 +11:00
Nyall Dawson
c49b5b777f Change a lot of arguments to const references in core/gui
Rationale:
- there was a lot of large objects passed by value, so potentially
there's a speed bump from this
- even for implicitly shared classes like QString/QList there's still
a (small) cost for copying the objects when there's no reason to
- it's the right thing to do!
2015-10-07 12:02:04 +11:00
Juergen E. Fischer
9752c468c1 indentation update 2015-07-29 11:52:14 +02:00
Juergen E. Fischer
a57066a48d * fix cppcheck warnings
* some sip updates
* [API] fix spelling QgsMultiRenderChecker::drawBackround
* [API] fix spelling QgsSymbolLayerV2Utils::drawStippledBackround
* [API] fix spelling QgsMapSettings::layerTransfrom
2014-11-20 15:02:35 +01:00
Nyall Dawson
a2d5acb516 Add argument to QgsCoordinateTransform::transformBoundingBox to flag that
handling of a bounding box which crosses the 180 degree longitude line
is required. Fix composer map reprojected grids which cross 180 degree line.
2014-10-02 06:48:53 +10:00
Juergen E. Fischer
c4c131ef75 sip sync 2014-05-27 23:32:42 +02:00
Juergen E. Fischer
74e7314c36 update sip bindings II 2014-01-27 09:22:53 +01:00
Juergen E. Fischer
d4e369414b update sip bindings 2014-01-26 18:36:29 +01:00
Juergen E. Fischer
eef8627663 more sip fixes 2012-09-24 22:40:24 +02:00
Juergen E. Fischer
f3cb57b1eb SIP bindings update:
- update methods of existing classes
- add comment to methods missing in the sip bindings
- split up collective sip files into single files and use
  same directory structure in python/ as in src/
- add a lot of missing classes (some might not make sense because of
  missing python methods in those classes)
- remove some non-existing methods from the header files
- add scripts/sipdiff
- replace some usages of std::vector and std::set with QVector/QSet
2012-09-24 02:42:57 +02:00
Juergen E. Fischer
2564e6a79a [API] add sip bindings for QgsCsException 2012-01-28 22:33:14 +01:00
rblazek
3109508503 merged raster-providers branch r15390
git-svn-id: http://svn.osgeo.org/qgis/trunk@15392 c8812cc2-4d05-0410-92ff-de0c093fc19c
2011-03-08 19:15:31 +00:00
timlinux
b40ceb2d62 API cleanups for QgsRect that got overlooked...
git-svn-id: http://svn.osgeo.org/qgis/trunk@9605 c8812cc2-4d05-0410-92ff-de0c093fc19c
2008-11-09 00:14:12 +00:00
timlinux
5aeb250006 api cleanups for distance area
git-svn-id: http://svn.osgeo.org/qgis/trunk@9504 c8812cc2-4d05-0410-92ff-de0c093fc19c
2008-10-20 20:41:06 +00:00
timlinux
ba986011cd Fix naming of reverse coordinate transform enum
git-svn-id: http://svn.osgeo.org/qgis/trunk@9498 c8812cc2-4d05-0410-92ff-de0c093fc19c
2008-10-19 20:16:08 +00:00
timlinux
1ca4f2365b More api cleanups
git-svn-id: http://svn.osgeo.org/qgis/trunk@9495 c8812cc2-4d05-0410-92ff-de0c093fc19c
2008-10-19 19:20:42 +00:00
timlinux
b6ec0534fb Further api updates in core
git-svn-id: http://svn.osgeo.org/qgis/trunk@9478 c8812cc2-4d05-0410-92ff-de0c093fc19c
2008-10-16 06:31:25 +00:00
jef
31327f51fd Merged rest of composer branch (9087-9115)
git-svn-id: http://svn.osgeo.org/qgis/trunk@9125 c8812cc2-4d05-0410-92ff-de0c093fc19c
2008-08-23 09:19:49 +00:00
timlinux
a4bd78c9f8 Refactor spatial reference system to coordinate reference system (finalise fix of ticket #15). Also updated some more core api docs / module assignments.
git-svn-id: http://svn.osgeo.org/qgis/trunk@9108 c8812cc2-4d05-0410-92ff-de0c093fc19c
2008-08-21 21:11:56 +00:00