[Qgis-developer] Use Georeferencer Core-Plugin with python
Olivier Dalang
olivier.dalang at gmail.com
Tue Jul 29 03:12:06 PDT 2014
Hi Felix,
Any progress on this ?
I've also a case where I'd love to be able to use georeferencer with
python...
Thanks !
Olivier Dalang
---
Digital Humanities Lab (DHLAB) - http://dhlab.epfl.ch
EPFL CDH DHLAB / CM 2 271
Station 10 / CH-1015 Lausanne
Tel. +41 21 693 02 46
2014-05-19 22:07 GMT+02:00 Felix Schmidt <felix.schmidt at uni-weimar.de>:
> Thanks a lot for the support,
> i will read your commit and talk to my team mates on Wednesday.
>
> Felix
>
> Am 19.05.2014 21:09, schrieb Matthias Kuhn:
>
> A pull request is online for review:
>>
>> https://github.com/qgis/QGIS/pull/1370
>>
>> Please post your comments there if you are interested in this
>> functionality.
>>
>> On Mon 19 Mai 2014 18:55:54 CEST, G. Allegri wrote:
>>
>>> Of course Matthias is right if you want to interface with a plugin
>>> instance running inside QGIS. That's why I said you could bind only
>>> the inner logic of the Georeferencer to use it "outside" the plugin
>>> instance. In case you need to control, or get work done from, the
>>> Georeferencer plugin itself you have to do what Matthias is doing in
>>> its commit.
>>>
>>> giovanni
>>>
>>>
>>> 2014-05-19 18:33 GMT+02:00 Matthias Kuhn <matthias.kuhn at gmx.ch
>>> <mailto:matthias.kuhn at gmx.ch>>:
>>>
>>> The python modules gui and core are exported and the "iface"
>>> variable (QgisInterface) knows about their presence. But
>>> QgisInterface should not have any dependencies on plugin code,
>>> therefore it's harder to access this code.
>>> It may not be hard if you only make use of code which you use in a
>>> standalone library way (maybe that would already be enough for
>>> your case). If you want to get access to a running plugin instance
>>> this is a different story. You can have a look at the code in [1]
>>> for an example of how this might be accomplished. Although the
>>> code seems not to be working, I've got to check what's still
>>> missing there, but in principle the ideas in commit [1] should work.
>>>
>>> Best,
>>> Matthias
>>>
>>> [1]
>>> https://github.com/m-kuhn/__QGIS/commit/__
>>> 571b4fa7e6afcefb9c4911339db2c4__b7689ce6a9
>>> <https://github.com/m-kuhn/QGIS/commit/
>>> 571b4fa7e6afcefb9c4911339db2c4b7689ce6a9>
>>>
>>>
>>>
>>> On Mon 19 May 2014 05:34:41 PM CEST, Felix Schmidt wrote:
>>>
>>> @Matthias: what do you mean with:
>>> Am 19.05.2014 16:41, schrieb Matthias Kuhn: "the code is not
>>> exported
>>> to the gui or core libraries/sip modules"?
>>>
>>> It will not be so easy to just write wrappers because the
>>> code is not
>>> exported to the gui or core libraries/sip modules.
>>> I have written code that makes it possible to generate
>>> python
>>> bindings for (C++) plugins and I'm considering creating a
>>> pull-request for it.
>>>
>>> Matthias
>>>
>>>
>>> On 05/19/2014 04:33 PM, G. Allegri wrote:
>>>
>>> It depends on what parts of the Georeferencer you
>>> need. If you don't
>>> need the GUI but only the math, you could consider
>>> writing a SIP
>>> wrapper around QgsGeorefTransformInterface
>>> implementations [1].
>>> Otherwise, if Python performance would suffice, you
>>> could grab the
>>> low level math from QgsGeorefTransform and
>>> QgsLeastSquares [2] and
>>> translate it to Python.
>>>
>>> giovanni
>>>
>>> [1]
>>> https://github.com/qgis/QGIS/_
>>> _blob/master/src/plugins/__georeferencer/__qgsgeoreftransform.cpp
>>> <https://github.com/qgis/QGIS/blob/master/src/plugins/
>>> georeferencer/qgsgeoreftransform.cpp>
>>> [2]
>>> https://github.com/qgis/QGIS/_
>>> _blob/master/src/plugins/__georeferencer/qgsleastsquares.__cpp
>>> <https://github.com/qgis/QGIS/blob/master/src/plugins/
>>> georeferencer/qgsleastsquares.cpp>
>>>
>>>
>>>
>>> 2014-05-19 16:32 GMT+02:00 G. Allegri
>>> <giohappy at gmail.com <mailto:giohappy at gmail.com>
>>> <mailto:giohappy at gmail.com <mailto:giohappy at gmail.com
>>> >>>:
>>>
>>>
>>> It depends on what parts of the Georeferencer you
>>> need. If you
>>> don't need the GUI but only the math, you could
>>> consider writing
>>> a SIP wrapper around QgsGeorefTransformInterface
>>> implementations
>>> [1].
>>> Otherwise, if Python performance would suffice,
>>> you could grab
>>> the low level math from QgsGeorefTransform and
>>> QgsLeastSquares
>>> [2] and translate it to Python.
>>>
>>> giovanni
>>>
>>> [1]
>>>
>>> https://github.com/qgis/QGIS/_
>>> _blob/master/src/plugins/__georeferencer/__qgsgeoreftransform.cpp
>>> <https://github.com/qgis/QGIS/blob/master/src/plugins/
>>> georeferencer/qgsgeoreftransform.cpp>
>>> [2]
>>>
>>> https://github.com/qgis/QGIS/_
>>> _blob/master/src/plugins/__georeferencer/qgsleastsquares.__cpp
>>> <https://github.com/qgis/QGIS/blob/master/src/plugins/
>>> georeferencer/qgsleastsquares.cpp>
>>>
>>>
>>> 2014-05-19 16:10 GMT+02:00 Felix Schmidt
>>> <felix.schmidt at uni-weimar.de
>>> <mailto:felix.schmidt at uni-weimar.de>
>>> <mailto:felix.schmidt at uni-__weimar.de
>>> <mailto:felix.schmidt at uni-weimar.de>>>:
>>>
>>>
>>> Hello Giovanni,
>>> thanks for your answer. Do you think it is
>>> easier to write
>>> the Plugin for the historical border
>>> extraction in c++
>>> instead of python, cause of the binding
>>> implementation?
>>>
>>> Felix
>>>
>>> Am 19.05.2014 14:52, schrieb G. Allegri:
>>>
>>> Hi Felix,
>>> I fear you will have to write your own
>>> bindings if you
>>> want to leavarage the Georeferencer plugin
>>> code. It's a
>>> plugin, so it's functionality isn't
>>> exposed through QGIS
>>> API.
>>>
>>>
>>>
>>>
>>>
>>> --
>>> Giovanni Allegri
>>> http://about.me/__giovanniallegri
>>> <http://about.me/giovanniallegri>
>>> Twitter: https://twitter.com/_giohappy_
>>> blog: http://blog.spaziogis.it
>>> GEO+ geomatica in Italia http://bit.ly/GEOplus
>>>
>>>
>>>
>>>
>>> --
>>> Giovanni Allegri
>>> http://about.me/__giovanniallegri
>>> <http://about.me/giovanniallegri>
>>> Twitter: https://twitter.com/_giohappy_
>>> blog: http://blog.spaziogis.it
>>> GEO+ geomatica in Italia http://bit.ly/GEOplus
>>>
>>>
>>> _________________________________________________
>>> Qgis-developer mailing list
>>> Qgis-developer at lists.osgeo.org
>>> <mailto:Qgis-developer at lists.osgeo.org>
>>> http://lists.osgeo.org/__mailman/listinfo/qgis-__
>>> developer
>>> <http://lists.osgeo.org/mailman/listinfo/qgis-developer
>>> >
>>>
>>>
>>>
>>> _________________________________________________
>>> Qgis-developer mailing list
>>> Qgis-developer at lists.osgeo.org <mailto:Qgis-developer at lists.
>>> osgeo.org>
>>> http://lists.osgeo.org/__mailman/listinfo/qgis-__developer
>>> <http://lists.osgeo.org/mailman/listinfo/qgis-developer>
>>>
>>>
>>>
>>>
>>> --
>>> Giovanni Allegri
>>> http://about.me/giovanniallegri
>>> Twitter: https://twitter.com/_giohappy_
>>> blog: http://blog.spaziogis.it
>>> GEO+ geomatica in Italia http://bit.ly/GEOplus
>>>
>>
>>
> _______________________________________________
> Qgis-developer mailing list
> Qgis-developer at lists.osgeo.org
> http://lists.osgeo.org/mailman/listinfo/qgis-developer
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osgeo.org/pipermail/qgis-developer/attachments/20140729/6638f2e4/attachment-0001.html>
More information about the Qgis-developer
mailing list