Re: [Qgis-developer] WCS and Raster improvements for QGIS

2012-07-13 Thread Even Rouault
Hi Radim,

 - (I know that OS people don't like to here it and  they will argue
 that is is not a way ahead.) WCS is not widespread yet and there are
 various issues with implementation in UMN Mapserver (and other
 servers) and GDAL. Combination of that issues made it for example
 impossible to support WCS 1.1 in QGIS via GDAL WCS provider. In QGIS
 we can use various hacks to get over various issues with servers, for
 example axis switching etc. which would not be accepted in GDAL.

Well, when developing the WFS driver in OGR, I have had to implement various
hacks to support the varying behaviour of the WFS servers in the wild, so I
don't think it is an absolute obstacle. There's probably still work to deal with
axis switching in GDAL. For geographic SRS, the support for axis switching is
already there (I didn't check if it is used in the WCS driver, but it is there
at the OGRSpatialReference level, and it is already used in the WMS and WFS
drivers). I have also a patch pending to deal with projected SRS that have axis
switched, if that's what is missing. If the issue is that some servers don't
behave accordingly to the spec, we could imagine to have an option in the
description XML to pass that information to the driver.

 Then
 there is a question of time, if you look at deployment on Linux, it
 takes months or years to get fixed package into a distribution. In
 last two days, I found for example new issues with both UMN Mapserver
 and GDAL which we can get around in QGIS, but we would need to wait
 years until fixed versions get to distributions.

Not false, but I'm wondering why a new version of QGIS would be packaged faster
than a GDAL one. QGIS could document that QGIS X needs at least GDAL = Y if it
needs Y for a functionality.

 - question/suggestion, GDAL i using CPLHTTPFetch() to get data from
 server, would it be possible to add a possibility to set user function
 to be used instead of default CPLHTTPFetch()? Something like
 SetHTTPFetchFunction( myHTTPFetch ). That would make it possible to
 use GDAL providers with QgsNetworkAccessManager for example.

I was actually thinking to something like that when reading Marco's email.
Sounds perfectly doable. The only point that could be tricky is if you need a
user_data pointer that is specific to each WCS connexion.

My intention was not to force the use of GDAL, but to know if there were
technical reasons that would prevent from using it. This work could be an
opportunity to make its WCS driver better, for QGIS benefit, and all other
projects that rely on GDAL.

Best regards,

Even
___
Qgis-developer mailing list
Qgis-developer@lists.osgeo.org
http://lists.osgeo.org/mailman/listinfo/qgis-developer


Re: [Qgis-developer] WCS and Raster improvements for QGIS

2012-07-13 Thread Radim Blazek
On Fri, Jul 13, 2012 at 10:46 AM, Even Rouault
even.roua...@mines-paris.org wrote:
 - question/suggestion, GDAL i using CPLHTTPFetch() to get data from
 server, would it be possible to add a possibility to set user function
 to be used instead of default CPLHTTPFetch()? Something like
 SetHTTPFetchFunction( myHTTPFetch ). That would make it possible to
 use GDAL providers with QgsNetworkAccessManager for example.

 I was actually thinking to something like that when reading Marco's email.
 Sounds perfectly doable. The only point that could be tricky is if you need a
 user_data pointer that is specific to each WCS connexion.

Yes, requests must be somehow assigned to layers/providers so that
progress may be emitted from the right place.  It could be maybe done
using GDALDatasetH pointer? Just another hack.

In theory, we are going to use threads, which could complicate it even
more. It is not yet clear to me if QgsRasterDataProvider::readBlock of
an instance is also going to be called from multiple threads
simultaneously?

Radim
___
Qgis-developer mailing list
Qgis-developer@lists.osgeo.org
http://lists.osgeo.org/mailman/listinfo/qgis-developer


Re: [Qgis-developer] WCS and Raster improvements for QGIS

2012-07-13 Thread Tim Sutton
Hi

On Fri, Jul 13, 2012 at 10:46 AM, Even Rouault
even.roua...@mines-paris.org wrote:

 My intention was not to force the use of GDAL, but to know if there were
 technical reasons that would prevent from using it. This work could be an
 opportunity to make its WCS driver better, for QGIS benefit, and all other
 projects that rely on GDAL.

Understood. Its why we shared our plans so that we can have this kind
of discussion before the fact.


 Best regards,

 Even
 ___
 Qgis-developer mailing list
 Qgis-developer@lists.osgeo.org
 http://lists.osgeo.org/mailman/listinfo/qgis-developer



-- 
Tim Sutton - QGIS Project Steering Committee Member (Release  Manager)
==
Please do not email me off-list with technical
support questions. Using the lists will gain
more exposure for your issues and the knowledge
surrounding your issue will be shared with all.

Visit http://linfiniti.com to find out about:
 * QGIS programming and support services
 * Mapserver and PostGIS based hosting plans
 * FOSS Consulting Services
Skype: timlinux
Irc: timlinux on #qgis at freenode.net
==
___
Qgis-developer mailing list
Qgis-developer@lists.osgeo.org
http://lists.osgeo.org/mailman/listinfo/qgis-developer


Re: [Qgis-developer] WCS and Raster improvements for QGIS

2012-07-13 Thread Radim Blazek
On Fri, Jul 13, 2012 at 1:19 PM, Tim Sutton li...@linfiniti.com wrote:
 My intention was not to force the use of GDAL, but to know if there were
 technical reasons that would prevent from using it. This work could be an
 opportunity to make its WCS driver better, for QGIS benefit, and all other
 projects that rely on GDAL.

 Understood. Its why we shared our plans so that we can have this kind
 of discussion before the fact.

Hmm, the native WCS is almost ready...

Radim
___
Qgis-developer mailing list
Qgis-developer@lists.osgeo.org
http://lists.osgeo.org/mailman/listinfo/qgis-developer


Re: [Qgis-developer] WCS and Raster improvements for QGIS

2012-07-13 Thread Tim Sutton
Hi

On Fri, Jul 13, 2012 at 1:32 PM, Radim Blazek radim.bla...@gmail.com wrote:
 On Fri, Jul 13, 2012 at 1:19 PM, Tim Sutton li...@linfiniti.com wrote:
 My intention was not to force the use of GDAL, but to know if there were
 technical reasons that would prevent from using it. This work could be an
 opportunity to make its WCS driver better, for QGIS benefit, and all other
 projects that rely on GDAL.

 Understood. Its why we shared our plans so that we can have this kind
 of discussion before the fact.

 Hmm, the native WCS is almost ready...


Also great. No problem from me!

Regards

Tim

 Radim



-- 
Tim Sutton - QGIS Project Steering Committee Member (Release  Manager)
==
Please do not email me off-list with technical
support questions. Using the lists will gain
more exposure for your issues and the knowledge
surrounding your issue will be shared with all.

Visit http://linfiniti.com to find out about:
 * QGIS programming and support services
 * Mapserver and PostGIS based hosting plans
 * FOSS Consulting Services
Skype: timlinux
Irc: timlinux on #qgis at freenode.net
==
___
Qgis-developer mailing list
Qgis-developer@lists.osgeo.org
http://lists.osgeo.org/mailman/listinfo/qgis-developer


Re: [Qgis-developer] WCS and Raster improvements for QGIS

2012-07-13 Thread Even Rouault

 Yes, requests must be somehow assigned to layers/providers so that
 progress may be emitted from the right place.  It could be maybe done
 using GDALDatasetH pointer? Just another hack.

I've no ideal solution for this. Your suggestion could be indeed a possibility :
adding 2 methods GDALDatasetSetUserData()  GDALDatasetGetUserData() and the
user data being passed to the custom http fetcher if it is defined. Except that
I think that in the Open() method of the WCS driver, there are already HTTP
requests done to determine some characteristics of the dataset, so that is not
practical since the dataset handle isn't yet known at that time. Would need more
thinking.


 In theory, we are going to use threads, which could complicate it even
 more. It is not yet clear to me if QgsRasterDataProvider::readBlock of
 an instance is also going to be called from multiple threads
 simultaneously?

That can be a problem. And it isn't specific to the WCS driver. It is generally
not safe to access the *same* dataset handle concurrently from multiple threads
with most GDAL drivers, because the XXXDataset or XXXRasterBand classes may have
state variables that aren't protected against concurrent access. Looking a bit
at the WCS driver, I can see that the osResultFilename and pabySavedDataBuffer
member variables would certainly not appreciate concurrent access on the same
dataset handle. But looking at how they are used, they is no need to make them
persist between different calls to the IReadBlock() method. So they could be
easily made local variables passed to the GDALOpenResult() and
FlushMemoryResult() methods.

But reading your later email where you mention that the native QGIS WCS driver
is almost there, there's probably no need to dig further into this.

Thanks for having shared your thoughts,

Even
___
Qgis-developer mailing list
Qgis-developer@lists.osgeo.org
http://lists.osgeo.org/mailman/listinfo/qgis-developer


Re: [Qgis-developer] WCS and Raster improvements for QGIS

2012-07-12 Thread Andreas Neumann

Hi,

That sounds fantastic - looking forward to all these improvements!

The WCS is one more OGC implementation that brings us closer to more 
complete GDI support.


Personally I am excited about the composer improvements. Together with 
the serial printing initiative from the Atlas plugin we will get a quite 
powerful map and report generation engine.


I also like the requirement to have tests.

Once this is all implemented one can see what could be exposed in QGIS 
server and webclient.


Thanks for the information,
Andreas

On Thu, 12 Jul 2012 14:11:11 +0200, Tim Sutton wrote:

Hi All

I just wanted to share some development plans we have in order to
prevent possible duplication of effort. We have been funded by the
World Bank/GFDRR (Global Fund for Disaster Reduction and Recovery)  
to

add the following functionalities to QGIS:

Web Coverage Service Support:
- Implement test suite for WCS integration
- Implement support for WCS as a native QGIS raster driver
- Support addition of WCS layers from python
- Implement WCS test server and document setup procedure so it can be
replicated
- Implement a consistent user interface for adding WCS layers
Raster Improvements:
- Resampler branch integration - merge to master and integrate WCS
branch and ensure that all QGIS tests pass
- Implement sensible default colour scaling for rasters using 2% and
98% cumulative pixel count cut off where no style exists
- Implement (with c++ and python tests) range based floating point
raster transparency support in QGIS (singleband rasters only)
- Implement (with c++ and python tests) save as support for rasters 
in

QGIS. (Mainly tests required as builds on existing work).
- Implement support for user manipulation of raster null values in
QGIS when doing Save as.. (e.g. to specify a new null value).
- Support specification of region, pixel size and output CRS when
doing Save as... for rasters
- Add option (default behaviour) to enable OTF reprojection whenever 
a

new layer is added that differs in CRS from existing project layers.

The work will be carried by Radim Blazek under subcontract to
Linfiniti Consulting CC

In addition Sourcepole has been contracted by the World Bank/GFDRR to
add the following improvements to the composer:

Improvements to QGIS composer:
- Support graticule labels on specified sides only and ensure
garticule labels on inside are supported via python API
- Draw 'zebra style' graticule on borders
- Support printing degree marker (°) and N/E/S/W in graticule for
EPGS:4326 maps
- Support scale bar calculations based on ellipsoid for EPGS:4326 
maps

- Support placement of html elements on map composer
- Support overview map bounding box overlay based on extent of
another map frame
- Support multipage map compositions with pagination (this will be
limited to nominating a single table/html frame which can overrun the
primary frame and then paginate)
- Ensure composer render to pdf works with python bindings in non-gui
contexts (raster pdf renderer only)
- Ensure composer templates can be rendered from python by specifying
a template file path
- Allow tokenisation of template elements via python (e.g. by passing
strings of file paths to replace composer elements in template)
- Compile a test suite that validates all composer functionality 
works in C++

- Compile a test suite that validates all composer functionality
works in python

This work is being carried out in order to support the ongoing work 
we

are doing with the InaSAFE (Scenario Assessment for Emergencies)
project that we have been co-developing here at Linfiniti. The 
purpose

in particular is to support the development of a realtime scenario
report generator for post earthquake events.

The InaSAFE project is being developed by BNPB, AusAID and the World
Bank/GFDRR. You can find more details about the project at
http://inasafe.org

Regards

Tim



--
Tim Sutton - QGIS Project Steering Committee Member (Release  
Manager)

==
Please do not email me off-list with technical
support questions. Using the lists will gain
more exposure for your issues and the knowledge
surrounding your issue will be shared with all.

Visit http://linfiniti.com to find out about:
 * QGIS programming and support services
 * Mapserver and PostGIS based hosting plans
 * FOSS Consulting Services
Skype: timlinux
Irc: timlinux on #qgis at freenode.net
==
___
Qgis-developer mailing list
Qgis-developer@lists.osgeo.org
http://lists.osgeo.org/mailman/listinfo/qgis-developer


--
--
Andreas Neumann
Böschacherstrasse 10A
8624 Grüt (Gossau ZH)
Switzerland
___
Qgis-developer mailing list
Qgis-developer@lists.osgeo.org
http://lists.osgeo.org/mailman/listinfo/qgis-developer


Re: [Qgis-developer] WCS and Raster improvements for QGIS

2012-07-12 Thread Even Rouault
Hi Tim,

 - Implement support for WCS as a native QGIS raster driver

Just curious : has levering and/or improving the GDAL WCS driver been considered
?
___
Qgis-developer mailing list
Qgis-developer@lists.osgeo.org
http://lists.osgeo.org/mailman/listinfo/qgis-developer


Re: [Qgis-developer] WCS and Raster improvements for QGIS

2012-07-12 Thread Sandro Santilli
On Thu, Jul 12, 2012 at 02:47:32PM +0200, Andreas Neumann wrote:

 I also like the requirement to have tests.

Yah, me too !
It's really good to see all those tests as part of the plan :)

Thanks to everyone involved in this !

--strk;

  ,--o-. 
  |   __/  |Delivering high quality PostGIS 2.1
  |  / 2.1 |http://strk.keybit.net - http://vizzuality.com
  `-o--'

___
Qgis-developer mailing list
Qgis-developer@lists.osgeo.org
http://lists.osgeo.org/mailman/listinfo/qgis-developer


Re: [Qgis-developer] WCS and Raster improvements for QGIS

2012-07-12 Thread Tim Sutton
Hi Even

On Thu, Jul 12, 2012 at 2:58 PM, Even Rouault
even.roua...@mines-paris.org wrote:
 Hi Tim,

 - Implement support for WCS as a native QGIS raster driver

 Just curious : has levering and/or improving the GDAL WCS driver been 
 considered
 ?

Yes - Radim already made a first pass implementation using GDAL WCS
though he said there were some problems with it - I think the most
critical being that it doesn't support proxy access (I am speaking
under correction here as I haven't looked into it in that much detail
myself). I will let Radim comment on any other issues. I think from
the project perspective we don't mind too much which approach is used
if the result is efficient and integrates nicely into QGIS.

Regards

Tim



-- 
Tim Sutton - QGIS Project Steering Committee Member (Release  Manager)
==
Please do not email me off-list with technical
support questions. Using the lists will gain
more exposure for your issues and the knowledge
surrounding your issue will be shared with all.

Visit http://linfiniti.com to find out about:
 * QGIS programming and support services
 * Mapserver and PostGIS based hosting plans
 * FOSS Consulting Services
Skype: timlinux
Irc: timlinux on #qgis at freenode.net
==
___
Qgis-developer mailing list
Qgis-developer@lists.osgeo.org
http://lists.osgeo.org/mailman/listinfo/qgis-developer


Re: [Qgis-developer] WCS and Raster improvements for QGIS

2012-07-12 Thread Tim Sutton
Hi

On Thu, Jul 12, 2012 at 3:08 PM, Sandro Santilli s...@keybit.net wrote:
 On Thu, Jul 12, 2012 at 02:47:32PM +0200, Andreas Neumann wrote:

 I also like the requirement to have tests.

 Yah, me too !
 It's really good to see all those tests as part of the plan :)

 Thanks to everyone involved in this !


Yes writing tests into the project plan and explaining the value of
investing in them to the clients is the way to go! In this case it was
an easy sell since we are using the work in the project to build
software that 'must just work' and having tests will be critical in
providing that assurance. That said I think in all cases, if a client
has paid for something the will want to know that it 'just works and
keeps working down the line' too. Hopefully other QGIS developers who
are creating contracts will follow suite

Regards

Tim


 --strk;

   ,--o-.
   |   __/  |Delivering high quality PostGIS 2.1
   |  / 2.1 |http://strk.keybit.net - http://vizzuality.com
   `-o--'

 ___
 Qgis-developer mailing list
 Qgis-developer@lists.osgeo.org
 http://lists.osgeo.org/mailman/listinfo/qgis-developer



-- 
Tim Sutton - QGIS Project Steering Committee Member (Release  Manager)
==
Please do not email me off-list with technical
support questions. Using the lists will gain
more exposure for your issues and the knowledge
surrounding your issue will be shared with all.

Visit http://linfiniti.com to find out about:
 * QGIS programming and support services
 * Mapserver and PostGIS based hosting plans
 * FOSS Consulting Services
Skype: timlinux
Irc: timlinux on #qgis at freenode.net
==
___
Qgis-developer mailing list
Qgis-developer@lists.osgeo.org
http://lists.osgeo.org/mailman/listinfo/qgis-developer


Re: [Qgis-developer] WCS and Raster improvements for QGIS

2012-07-12 Thread Even Rouault

 Yes - Radim already made a first pass implementation using GDAL WCS
 though he said there were some problems with it - I think the most
 critical being that it doesn't support proxy access (I am speaking
 under correction here as I haven't looked into it in that much detail
 myself).

This should be rather easy to add. It is just a matter of setting the right
option to CPLHTTPFetch() (and thus the curl library), namely :

liPROXY=val, to make requests go through a proxy server, where val is of the
form proxy.server.com:port_number
liPROXYUSERPWD=val, where val is of the form username:password

Note: They can also already be used by setting the GDAL_HTTP_PROXY and
GDAL_HTTP_PROXYUSERPWD configuration options/environmenet variable, which will
act on all GDAL/OGR drivers that go through the CPLHTTPFetch() function.

I see Radim is already a GDAL committer, so there shouldn't be too much overhead
if he wants to hack in the WCS driver.

 I will let Radim comment on any other issues. I think from
 the project perspective we don't mind too much which approach is used
 if the result is efficient and integrates nicely into QGIS.

 Regards

 Tim



 --
 Tim Sutton - QGIS Project Steering Committee Member (Release  Manager)
 ==
 Please do not email me off-list with technical
 support questions. Using the lists will gain
 more exposure for your issues and the knowledge
 surrounding your issue will be shared with all.

 Visit http://linfiniti.com to find out about:
  * QGIS programming and support services
  * Mapserver and PostGIS based hosting plans
  * FOSS Consulting Services
 Skype: timlinux
 Irc: timlinux on #qgis at freenode.net
 ==



___
Qgis-developer mailing list
Qgis-developer@lists.osgeo.org
http://lists.osgeo.org/mailman/listinfo/qgis-developer


Re: [Qgis-developer] WCS and Raster improvements for QGIS

2012-07-12 Thread Etienne Tourigny
Sorry for butting in - but I think it would be much more productive to
fix/enhance the gdal WCS driver than to implement a standalone qgis
provider.

Etienne

On Thu, Jul 12, 2012 at 10:51 AM, Even Rouault
even.roua...@mines-paris.org wrote:

 Yes - Radim already made a first pass implementation using GDAL WCS
 though he said there were some problems with it - I think the most
 critical being that it doesn't support proxy access (I am speaking
 under correction here as I haven't looked into it in that much detail
 myself).

 This should be rather easy to add. It is just a matter of setting the right
 option to CPLHTTPFetch() (and thus the curl library), namely :

 liPROXY=val, to make requests go through a proxy server, where val is of the
 form proxy.server.com:port_number
 liPROXYUSERPWD=val, where val is of the form username:password

 Note: They can also already be used by setting the GDAL_HTTP_PROXY and
 GDAL_HTTP_PROXYUSERPWD configuration options/environmenet variable, which will
 act on all GDAL/OGR drivers that go through the CPLHTTPFetch() function.

 I see Radim is already a GDAL committer, so there shouldn't be too much 
 overhead
 if he wants to hack in the WCS driver.

 I will let Radim comment on any other issues. I think from
 the project perspective we don't mind too much which approach is used
 if the result is efficient and integrates nicely into QGIS.

 Regards

 Tim



 --
 Tim Sutton - QGIS Project Steering Committee Member (Release  Manager)
 ==
 Please do not email me off-list with technical
 support questions. Using the lists will gain
 more exposure for your issues and the knowledge
 surrounding your issue will be shared with all.

 Visit http://linfiniti.com to find out about:
  * QGIS programming and support services
  * Mapserver and PostGIS based hosting plans
  * FOSS Consulting Services
 Skype: timlinux
 Irc: timlinux on #qgis at freenode.net
 ==



 ___
 Qgis-developer mailing list
 Qgis-developer@lists.osgeo.org
 http://lists.osgeo.org/mailman/listinfo/qgis-developer
___
Qgis-developer mailing list
Qgis-developer@lists.osgeo.org
http://lists.osgeo.org/mailman/listinfo/qgis-developer


Re: [Qgis-developer] WCS and Raster improvements for QGIS

2012-07-12 Thread Paolo Cavallini
Il 12/07/2012 15:44, Tim Sutton ha scritto:

 keeps working down the line' too. Hopefully other QGIS developers who
 are creating contracts will follow suite

lesson taken ;)
thanks for all
-- 
Paolo Cavallini - Faunalia
www.faunalia.eu
Full contact details at www.faunalia.eu/pc
Nuovi corsi QGIS e PostGIS: http://www.faunalia.it/calendario
___
Qgis-developer mailing list
Qgis-developer@lists.osgeo.org
http://lists.osgeo.org/mailman/listinfo/qgis-developer


Re: [Qgis-developer] WCS and Raster improvements for QGIS

2012-07-12 Thread Barry Rowlingson
On Thu, Jul 12, 2012 at 2:44 PM, Tim Sutton li...@linfiniti.com wrote:

 Yes writing tests into the project plan and explaining the value of
 investing in them to the clients is the way to go! In this case it was
 an easy sell since we are using the work in the project to build
 software that 'must just work' and having tests will be critical in
 providing that assurance. That said I think in all cases, if a client
 has paid for something the will want to know that it 'just works and
 keeps working down the line' too. Hopefully other QGIS developers who
 are creating contracts will follow suite

 I think that implicitly answers the only question I had about this
project - that all the stuff would be properly documented too!

 The World Bank are doing a lot of good things - I listened to a few
talks at this http://www.data.gov/communities/conference the other
day.

 Congrats.

Barry
___
Qgis-developer mailing list
Qgis-developer@lists.osgeo.org
http://lists.osgeo.org/mailman/listinfo/qgis-developer


Re: [Qgis-developer] WCS and Raster improvements for QGIS

2012-07-12 Thread Marco Hugentobler

Hi

In my opinion, it is better to use the Qt classes for the network 
requests than curl. In QGIS, we have QgsNetworkAccessManager, which 
picks up automatically the network settings from the options tab (proxy 
settings, exclusion list, password, disk cache). It has nice progress 
reporting by signal/slot, the possibility to interrupt the network 
request and a disk cache. And the possibility to provide custom 
implementations for all that if necessary.


Like this, WFS, WPS, WMS providers, plugin installer and open layers 
plugin (and third party python plugins) have a unified method to do 
network requests. No need to use a different network library for each 
one (and the mapping is never 1:1, there is always loss).


So while it might be quicker (in terms of development time) to use the 
GDAL provider, a standalone provider is always more native and flexible 
(that's also the reason there are QGIS vector providers for postgres, 
wfs, gpx, spatialite, grass while everything can be read with the OGR 
provider).


Regards,
Marco

Am 12.07.2012 15:51, schrieb Even Rouault:

Yes - Radim already made a first pass implementation using GDAL WCS
though he said there were some problems with it - I think the most
critical being that it doesn't support proxy access (I am speaking
under correction here as I haven't looked into it in that much detail
myself).

This should be rather easy to add. It is just a matter of setting the right
option to CPLHTTPFetch() (and thus the curl library), namely :

liPROXY=val, to make requests go through a proxy server, where val is of the
 form proxy.server.com:port_number
liPROXYUSERPWD=val, where val is of the form username:password

Note: They can also already be used by setting the GDAL_HTTP_PROXY and
GDAL_HTTP_PROXYUSERPWD configuration options/environmenet variable, which will
act on all GDAL/OGR drivers that go through the CPLHTTPFetch() function.

I see Radim is already a GDAL committer, so there shouldn't be too much overhead
if he wants to hack in the WCS driver.


I will let Radim comment on any other issues. I think from
the project perspective we don't mind too much which approach is used
if the result is efficient and integrates nicely into QGIS.

Regards

Tim



--
Tim Sutton - QGIS Project Steering Committee Member (Release  Manager)
==
Please do not email me off-list with technical
support questions. Using the lists will gain
more exposure for your issues and the knowledge
surrounding your issue will be shared with all.

Visit http://linfiniti.com to find out about:
  * QGIS programming and support services
  * Mapserver and PostGIS based hosting plans
  * FOSS Consulting Services
Skype: timlinux
Irc: timlinux on #qgis at freenode.net
==



___
Qgis-developer mailing list
Qgis-developer@lists.osgeo.org
http://lists.osgeo.org/mailman/listinfo/qgis-developer



--
Dr. Marco Hugentobler
Sourcepole -  Linux  Open Source Solutions
Weberstrasse 5, CH-8004 Zürich, Switzerland
marco.hugentob...@sourcepole.ch http://www.sourcepole.ch
Technical Advisor QGIS Project Steering Committee

___
Qgis-developer mailing list
Qgis-developer@lists.osgeo.org
http://lists.osgeo.org/mailman/listinfo/qgis-developer


Re: [Qgis-developer] WCS and Raster improvements for QGIS

2012-07-12 Thread Tim Sutton
Hi

On Thu, Jul 12, 2012 at 5:15 PM, Marco Hugentobler
marco.hugentob...@sourcepole.ch wrote:
 Hi

 In my opinion, it is better to use the Qt classes for the network requests
 than curl. In QGIS, we have QgsNetworkAccessManager, which picks up
 automatically the network settings from the options tab (proxy settings,
 exclusion list, password, disk cache). It has nice progress reporting by
 signal/slot, the possibility to interrupt the network request and a disk
 cache. And the possibility to provide custom implementations for all that if
 necessary.

 Like this, WFS, WPS, WMS providers, plugin installer and open layers plugin
 (and third party python plugins) have a unified method to do network
 requests. No need to use a different network library for each one (and the
 mapping is never 1:1, there is always loss).

 So while it might be quicker (in terms of development time) to use the GDAL
 provider, a standalone provider is always more native and flexible (that's
 also the reason there are QGIS vector providers for postgres, wfs, gpx,
 spatialite, grass while everything can be read with the OGR provider).


Thanks Marco for filling in the background to the debate we had when
developing the proposal with WorldBank/GFDRR on whether to implement
the WCS provider natively or use GDAL. All of the reasons Marco
mentions make extremely good sense.

Regards

Tim



 Regards,
 Marco

 Am 12.07.2012 15:51, schrieb Even Rouault:

 Yes - Radim already made a first pass implementation using GDAL WCS
 though he said there were some problems with it - I think the most
 critical being that it doesn't support proxy access (I am speaking
 under correction here as I haven't looked into it in that much detail
 myself).

 This should be rather easy to add. It is just a matter of setting the
 right
 option to CPLHTTPFetch() (and thus the curl library), namely :

 liPROXY=val, to make requests go through a proxy server, where val is of
 the
  form proxy.server.com:port_number
 liPROXYUSERPWD=val, where val is of the form username:password

 Note: They can also already be used by setting the GDAL_HTTP_PROXY and
 GDAL_HTTP_PROXYUSERPWD configuration options/environmenet variable, which
 will
 act on all GDAL/OGR drivers that go through the CPLHTTPFetch() function.

 I see Radim is already a GDAL committer, so there shouldn't be too much
 overhead
 if he wants to hack in the WCS driver.

 I will let Radim comment on any other issues. I think from
 the project perspective we don't mind too much which approach is used
 if the result is efficient and integrates nicely into QGIS.

 Regards

 Tim



 --
 Tim Sutton - QGIS Project Steering Committee Member (Release  Manager)
 ==
 Please do not email me off-list with technical
 support questions. Using the lists will gain
 more exposure for your issues and the knowledge
 surrounding your issue will be shared with all.

 Visit http://linfiniti.com to find out about:
   * QGIS programming and support services
   * Mapserver and PostGIS based hosting plans
   * FOSS Consulting Services
 Skype: timlinux
 Irc: timlinux on #qgis at freenode.net
 ==


 ___
 Qgis-developer mailing list
 Qgis-developer@lists.osgeo.org
 http://lists.osgeo.org/mailman/listinfo/qgis-developer



 --
 Dr. Marco Hugentobler
 Sourcepole -  Linux  Open Source Solutions
 Weberstrasse 5, CH-8004 Zürich, Switzerland
 marco.hugentob...@sourcepole.ch http://www.sourcepole.ch
 Technical Advisor QGIS Project Steering Committee


 ___
 Qgis-developer mailing list
 Qgis-developer@lists.osgeo.org
 http://lists.osgeo.org/mailman/listinfo/qgis-developer



-- 
Tim Sutton - QGIS Project Steering Committee Member (Release  Manager)
==
Please do not email me off-list with technical
support questions. Using the lists will gain
more exposure for your issues and the knowledge
surrounding your issue will be shared with all.

Visit http://linfiniti.com to find out about:
 * QGIS programming and support services
 * Mapserver and PostGIS based hosting plans
 * FOSS Consulting Services
Skype: timlinux
Irc: timlinux on #qgis at freenode.net
==
___
Qgis-developer mailing list
Qgis-developer@lists.osgeo.org
http://lists.osgeo.org/mailman/listinfo/qgis-developer


Re: [Qgis-developer] WCS and Raster improvements for QGIS

2012-07-12 Thread G. Allegri
Given the planned work on the composer I wonder if you're considering to
move the print code (e.g. [1]) outside of the GUI/app control, and make it
available for the python API, maybe in a QgsComposerPrinter class.
This would also make Atlas simpler...

giovanni

[1]
https://github.com/qgis/Quantum-GIS/blob/master/src/app/composer/qgscomposer.cpp#L528


2012/7/12 Tim Sutton li...@linfiniti.com

 Hi

 On Thu, Jul 12, 2012 at 5:15 PM, Marco Hugentobler
 marco.hugentob...@sourcepole.ch wrote:
  Hi
 
  In my opinion, it is better to use the Qt classes for the network
 requests
  than curl. In QGIS, we have QgsNetworkAccessManager, which picks up
  automatically the network settings from the options tab (proxy settings,
  exclusion list, password, disk cache). It has nice progress reporting by
  signal/slot, the possibility to interrupt the network request and a disk
  cache. And the possibility to provide custom implementations for all
 that if
  necessary.
 
  Like this, WFS, WPS, WMS providers, plugin installer and open layers
 plugin
  (and third party python plugins) have a unified method to do network
  requests. No need to use a different network library for each one (and
 the
  mapping is never 1:1, there is always loss).
 
  So while it might be quicker (in terms of development time) to use the
 GDAL
  provider, a standalone provider is always more native and flexible
 (that's
  also the reason there are QGIS vector providers for postgres, wfs, gpx,
  spatialite, grass while everything can be read with the OGR provider).
 

 Thanks Marco for filling in the background to the debate we had when
 developing the proposal with WorldBank/GFDRR on whether to implement
 the WCS provider natively or use GDAL. All of the reasons Marco
 mentions make extremely good sense.

 Regards

 Tim



  Regards,
  Marco
 
  Am 12.07.2012 15:51, schrieb Even Rouault:
 
  Yes - Radim already made a first pass implementation using GDAL WCS
  though he said there were some problems with it - I think the most
  critical being that it doesn't support proxy access (I am speaking
  under correction here as I haven't looked into it in that much detail
  myself).
 
  This should be rather easy to add. It is just a matter of setting the
  right
  option to CPLHTTPFetch() (and thus the curl library), namely :
 
  liPROXY=val, to make requests go through a proxy server, where val is
 of
  the
   form proxy.server.com:port_number
  liPROXYUSERPWD=val, where val is of the form username:password
 
  Note: They can also already be used by setting the GDAL_HTTP_PROXY and
  GDAL_HTTP_PROXYUSERPWD configuration options/environmenet variable,
 which
  will
  act on all GDAL/OGR drivers that go through the CPLHTTPFetch() function.
 
  I see Radim is already a GDAL committer, so there shouldn't be too much
  overhead
  if he wants to hack in the WCS driver.
 
  I will let Radim comment on any other issues. I think from
  the project perspective we don't mind too much which approach is used
  if the result is efficient and integrates nicely into QGIS.
 
  Regards
 
  Tim
 
 
 
  --
  Tim Sutton - QGIS Project Steering Committee Member (Release  Manager)
  ==
  Please do not email me off-list with technical
  support questions. Using the lists will gain
  more exposure for your issues and the knowledge
  surrounding your issue will be shared with all.
 
  Visit http://linfiniti.com to find out about:
* QGIS programming and support services
* Mapserver and PostGIS based hosting plans
* FOSS Consulting Services
  Skype: timlinux
  Irc: timlinux on #qgis at freenode.net
  ==
 
 
  ___
  Qgis-developer mailing list
  Qgis-developer@lists.osgeo.org
  http://lists.osgeo.org/mailman/listinfo/qgis-developer
 
 
 
  --
  Dr. Marco Hugentobler
  Sourcepole -  Linux  Open Source Solutions
  Weberstrasse 5, CH-8004 Zürich, Switzerland
  marco.hugentob...@sourcepole.ch http://www.sourcepole.ch
  Technical Advisor QGIS Project Steering Committee
 
 
  ___
  Qgis-developer mailing list
  Qgis-developer@lists.osgeo.org
  http://lists.osgeo.org/mailman/listinfo/qgis-developer



 --
 Tim Sutton - QGIS Project Steering Committee Member (Release  Manager)
 ==
 Please do not email me off-list with technical
 support questions. Using the lists will gain
 more exposure for your issues and the knowledge
 surrounding your issue will be shared with all.

 Visit http://linfiniti.com to find out about:
  * QGIS programming and support services
  * Mapserver and PostGIS based hosting plans
  * FOSS Consulting Services
 Skype: timlinux
 Irc: timlinux on #qgis at freenode.net
 ==
 ___
 Qgis-developer mailing list
 Qgis-developer@lists.osgeo.org