Hi all,
I have prepared the first pull request related to the backport of my
modifications for the WMSTileFuser(GeoWebCache) on GeoTools 11.x.
The pull request is https://github.com/geotools/geotools/pull/410.
NOTE: This pull requests will upgrade the ImageIO-Ext version from 1.1.8 to
1.1.9 which are very similar except for the new PNG Writer plugin.
I will be pleased to answer to your questions.
Cheers,
Nicola.
2014-04-04 10:48 GMT+02:00 Nicola Lagomarsini <
nicola.lagomars...@geo-solutions.it>:
> Hi all,
>
> I would ask if I can backport my modifications related to the WMSTileFuser
> class (GeoWebCache) on the following versions of GeoTools, GeoServer and
> GeoWebCache:
>
>
> - Geotools: 11.x and 10.x
> - GeoServer: 2.5.x and 2.4.x
> - GeoWebCache: 1.5.x
>
>
> I will wait a month from the date of each pull requests on the master
> branch before sending the new pull requests.
>
> It should be noted that these pull requests will upgrade the ImageIO-Ext
> version from 1.1.8 to 1.1.9 which are very similar except for the new PNG
> Writer plugin.
>
> This is a short summary of the 3 pull requests:
>
>
> - for GeoTools I have moved the Quantizer code from GeoServer. It is
> related to the following JIRA
> https://jira.codehaus.org/browse/GEOS-6376.
> - for GepServer I have moved the Quantizer code to GeoTools and the
> PNGEncoder code to ImageIO-Ext. (see the JIRA above).
> - for GeoWebCache, I have improved the WMSTileFuser class and made
> full WMS support configurable from the geowebcache.xml file. Also I added a
> new WMS parameter called "hints" which can be set to *SPEED*, *DEFAULT*and
> *QUALITY.* This parameter gives the possibility to make a WMS request
> faster or with a better quality.
>
>
> I will be pleased to answer to all your questions.
>
> Cheers,
> Nicola.
>
>
>
>
>
> 2014-03-07 15:43 GMT+01:00 Nicola Lagomarsini <
> nicola.lagomars...@geo-solutions.it>:
>
> Hi all,
>>
>> I have changed the hints configurations by differentiating the
>> interpolation type for each configuration:
>>
>> - speed = nearest interpolation (link
>>
>> https://drive.google.com/file/d/0B_H-B1p4qGi6aXN1TGpwNUc0MWs/edit?usp=sharing
>> )
>> - default = bilinear interpolation (link
>>
>> https://drive.google.com/file/d/0B_H-B1p4qGi6NHNSVmpDaTZPX0U/edit?usp=sharing
>> )
>> - quality = bicubic intperpolation (link
>>
>> https://drive.google.com/file/d/0B_H-B1p4qGi6NlFNUVMzSnB5UEk/edit?usp=sharing
>> )
>>
>> Cheers,
>>
>> Nicola.
>>
>>
>>
>> 2014-03-07 14:35 GMT+01:00 Nicola Lagomarsini <
>> nicola.lagomars...@geo-solutions.it>:
>>
>> Hi all,
>>>
>>> I have changed the quality factor to 0.25 and the image size is above
>>> 40kb. Here you can find the links for the new compressed images.
>>>
>>> speed configuration link:
>>> https://drive.google.com/file/d/0B_H-B1p4qGi6OHhRZU9GcXZTZG8/edit?usp=sharing
>>> default configuration link:
>>> https://drive.google.com/file/d/0B_H-B1p4qGi6dUdqSmRQXzJleHM/edit?usp=sharing
>>> quality configuration link:
>>> https://drive.google.com/file/d/0B_H-B1p4qGi6NjZVYWw1d19PRHc/edit?usp=sharing
>>>
>>> Cheers,
>>> Nicola.
>>>
>>>
>>>
>>> 2014-03-07 11:53 GMT+01:00 Nicola Lagomarsini <
>>> nicola.lagomars...@geo-solutions.it>:
>>>
>>> Hi all,
>>>>
>>>> I have set the quality factor to 0.1 inside the pull requests.
>>>>
>>>> Cheers,
>>>> Nicola.
>>>>
>>>>
>>>> 2014-03-07 11:11 GMT+01:00 Nicola Lagomarsini <
>>>> nicola.lagomars...@geo-solutions.it>:
>>>>
>>>> Hi Andrea,
>>>>>
>>>>> the quality parameter can be configured inside the application context
>>>>> for the PNGEncoder inside the gwc-wms and gs-gwc modules. By setting for
>>>>> example the quality parameter to 0.1 the image size is considerably
>>>>> reduced.
>>>>>
>>>>> About the hints considerations I have used different hints for each
>>>>> configuration, so I think that this similarity between speed and default
>>>>> configuration could be associated to a similar hints behaviour.
>>>>>
>>>>> Below are listed the hints for each configurations.
>>>>>
>>>>> Speed:
>>>>> KEY_COLOR_RENDERING = VALUE_COLOR_RENDER_SPEED;
>>>>> KEY_ANTIALIASING = VALUE_ANTIALIAS_OFF;
>>>>> KEY_FRACTIONALMETRICS = VALUE_FRACTIONALMETRICS_OFF;
>>>>> KEY_ALPHA_INTERPOLATION = VALUE_ALPHA_INTERPOLATION_SPEED;
>>>>> KEY_INTERPOLATION = VALUE_INTERPOLATION_NEAREST_NEIGHBOR;
>>>>> KEY_RENDERING = VALUE_RENDER_SPEED;
>>>>> KEY_TEXT_ANTIALIASING = VALUE_TEXT_ANTIALIAS_OFF;
>>>>> KEY_STROKE_CONTROL = VALUE_STROKE_PURE;
>>>>>
>>>>> Default:
>>>>> KEY_COLOR_RENDERING = VALUE_COLOR_RENDER_DEFAULT;
>>>>> KEY_ANTIALIASING = VALUE_ANTIALIAS_DEFAULT;
>>>>> KEY_FRACTIONALMETRICS = VALUE_FRACTIONALMETRICS_DEFAULT;
>>>>> KEY_ALPHA_INTERPOLATION =VALUE_ALPHA_INTERPOLATION_DEFAULT;
>>>>> KEY_RENDERING = VALUE_RENDER_DEFAULT;
>>>>> KEY_TEXT_ANTIALIASING = VALUE_TEXT_ANTIALIAS_DEFAULT;
>>>>> KEY_STROKE_CONTROL = VALUE_STROKE_DEFAULT;
>>>>>
>>>>> Quality:
>>>>> KEY_COLOR_RENDERING = VALUE_COLOR_RENDER_QUALITY;
>>>>> KEY_ANTIALIASING = VALUE_ANTIALIAS_ON;
>>>>> KEY_FRACTIONALMETRICS = VALUE_FRACTIONALMETRICS_ON;
>>>>> KEY_ALPHA_INTERPOLATION = VALUE_ALPHA_INTERPOLATION_QUALITY;
>>>>> KEY_INTERPOLATION = VALUE_INTERPOLATION_BILINEAR;
>>>>> KEY_RENDERING = VALUE_RENDER_QUALITY;
>>>>> KEY_TEXT_ANTIALIASING = VALUE_TEXT_ANTIALIAS_ON;
>>>>> KEY_STROKE_CONTROL = VALUE_STROKE_NORMALIZE;
>>>>>
>>>>> Cheers,
>>>>> Nicola.
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>> 2014-03-07 10:32 GMT+01:00 Andrea Aime <andrea.a...@geo-solutions.it>:
>>>>>
>>>>> On Fri, Mar 7, 2014 at 10:28 AM, Nicola Lagomarsini <
>>>>>> nicola.lagomars...@geo-solutions.it> wrote:
>>>>>>
>>>>>>> Hi all,
>>>>>>>
>>>>>>> I'm going to show some images for comparing the old wmsTileFuser
>>>>>>> class and its modified version, both in *fullWMS* mode enabled.
>>>>>>>
>>>>>>> I made the *fullWMS* parameter configurable from the
>>>>>>> geowebcache.xml file by adding the <fullWMS>TRUE(or FALSE)</fullWMS>
>>>>>>> field.
>>>>>>>
>>>>>>> I added the possibility for the user to change the image quality by
>>>>>>> setting an additional WMS parameter called *hints*. The user can
>>>>>>> choose one of the 3 following values: *speed*, *default*, *quality*.
>>>>>>>
>>>>>>> The first image represents the result of a WMS request on a
>>>>>>> vectorial layer, in image/png format. The other 3 images represent the
>>>>>>> same
>>>>>>> WMS request with the new WMS parameter.
>>>>>>>
>>>>>>> The second image value represents the result with the *speed* value
>>>>>>> which takes minor time without any care about the quality.
>>>>>>> The third image (*default* value selected) provides a better image
>>>>>>> quality but requires more time than the *speed* configuration.
>>>>>>> The last image with the *quality* value takes more time than the
>>>>>>> others but the final image has the best quality between the 4 images.
>>>>>>>
>>>>>>> From the results, in fact, it is easy to note that the image created
>>>>>>> with the *quality* hints has a better quality than that returned by
>>>>>>> the old WMSTileFuser class.
>>>>>>>
>>>>>>> I hope this could help to review the pull requests.
>>>>>>>
>>>>>>> P.S. The images are too big to be sent by mail, I add the following
>>>>>>> links for download:
>>>>>>>
>>>>>>> old wms request:
>>>>>>> https://drive.google.com/file/d/0B_H-B1p4qGi6VVgyVGJPYVV1c1hBMDMzakhPRTZlQTdzRFl3/edit?usp=sharing
>>>>>>> new wms request with speed hints:
>>>>>>> https://drive.google.com/file/d/0B_H-B1p4qGi6MEhJR1NxTkV2Tnh0Y3Zza2JJdHNtY0RhZVN3/edit?usp=sharing
>>>>>>> new wms request with default hints:
>>>>>>> https://drive.google.com/file/d/0B_H-B1p4qGi6bk5adnNYN2NjRUk/edit?usp=sharing
>>>>>>> new wms request with quality hints:
>>>>>>> https://drive.google.com/file/d/0B_H-B1p4qGi6b1RTYktBSjBtYlpOdGdFS3NVWkVIb1Rzd3g4/edit?usp=sharing
>>>>>>>
>>>>>>>
>>>>>> Hi Nicola,
>>>>>> I'm looking at the outputs, and finding something strange. The
>>>>>> quality one is definitely much better, for sure, however:
>>>>>> * the new images are ~20 times larger than the oldwms one (from 34kb
>>>>>> to 758KB), something is wrong with the png compression parameters I
>>>>>> suppose
>>>>>> * I cannot see any difference, visually, between oldwms, new with
>>>>>> speed, and new with default
>>>>>>
>>>>>> Cheers
>>>>>> Andrea
>>>>>>
>>>>>> --
>>>>>> == Our support, Your Success! Visit http://opensdi.geo-solutions.itfor
>>>>>> more information ==
>>>>>>
>>>>>> Ing. Andrea Aime
>>>>>> @geowolf
>>>>>> Technical Lead
>>>>>>
>>>>>> GeoSolutions S.A.S.
>>>>>> Via Poggio alle Viti 1187
>>>>>> 55054 Massarosa (LU)
>>>>>> Italy
>>>>>> phone: +39 0584 962313
>>>>>> fax: +39 0584 1660272
>>>>>> mob: +39 339 8844549
>>>>>>
>>>>>> http://www.geo-solutions.it
>>>>>> http://twitter.com/geosolutions_it
>>>>>>
>>>>>> -------------------------------------------------------
>>>>>>
>>>>>
>>>>>
>>>>>
>>>>> --
>>>>> ==
>>>>> Our support, Your Success! Visit http://opensdi.geo-solutions.it for
>>>>> more information.
>>>>> ==
>>>>>
>>>>> Ing. Nicola Lagormarsini
>>>>> Junior Software Engineer
>>>>>
>>>>> GeoSolutions S.A.S.
>>>>> Via Poggio alle Viti 1187
>>>>> 55054 Massarosa (LU)
>>>>> Italy
>>>>> phone: +39 0584 962313
>>>>> fax: +39 0584 1660272
>>>>>
>>>>> http://www.geo-solutions.it
>>>>> http://twitter.com/geosolutions_it
>>>>>
>>>>> -------------------------------------------------------
>>>>>
>>>>
>>>>
>>>>
>>>> --
>>>> ==
>>>> Our support, Your Success! Visit http://opensdi.geo-solutions.it for
>>>> more information.
>>>> ==
>>>>
>>>> Ing. Nicola Lagormarsini
>>>> Junior Software Engineer
>>>>
>>>> GeoSolutions S.A.S.
>>>> Via Poggio alle Viti 1187
>>>> 55054 Massarosa (LU)
>>>> Italy
>>>> phone: +39 0584 962313
>>>> fax: +39 0584 1660272
>>>>
>>>> http://www.geo-solutions.it
>>>> http://twitter.com/geosolutions_it
>>>>
>>>> -------------------------------------------------------
>>>>
>>>
>>>
>>>
>>> --
>>> ==
>>> Our support, Your Success! Visit http://opensdi.geo-solutions.it for
>>> more information.
>>> ==
>>>
>>> Ing. Nicola Lagormarsini
>>> Junior Software Engineer
>>>
>>> GeoSolutions S.A.S.
>>> Via Poggio alle Viti 1187
>>> 55054 Massarosa (LU)
>>> Italy
>>> phone: +39 0584 962313
>>> fax: +39 0584 1660272
>>>
>>> http://www.geo-solutions.it
>>> http://twitter.com/geosolutions_it
>>>
>>> -------------------------------------------------------
>>>
>>
>>
>>
>> --
>> ==
>> Our support, Your Success! Visit http://opensdi.geo-solutions.it for
>> more information.
>> ==
>>
>> Ing. Nicola Lagormarsini
>> Junior Software Engineer
>>
>> GeoSolutions S.A.S.
>> Via Poggio alle Viti 1187
>> 55054 Massarosa (LU)
>> Italy
>> phone: +39 0584 962313
>> fax: +39 0584 1660272
>>
>> http://www.geo-solutions.it
>> http://twitter.com/geosolutions_it
>>
>> -------------------------------------------------------
>>
>
>
>
> --
> ==
> Meet us at GEO Business 2014! in London! Visit http://goo.gl/fES3aK
> for more information.
> ==
>
> Ing. Nicola Lagormarsini
> Junior Software Engineer
>
> GeoSolutions S.A.S.
> Via Poggio alle Viti 1187
> 55054 Massarosa (LU)
> Italy
> phone: +39 0584 962313
> fax: +39 0584 1660272
>
> http://www.geo-solutions.it
> http://twitter.com/geosolutions_it
>
> -------------------------------------------------------
>
--
==
Meet us at GEO Business 2014! in London! Visit http://goo.gl/fES3aK
for more information.
==
Ing. Nicola Lagomarsini
Junior Software Engineer
GeoSolutions S.A.S.
Via Poggio alle Viti 1187
55054 Massarosa (LU)
Italy
phone: +39 0584 962313
fax: +39 0584 1660272
http://www.geo-solutions.it
http://twitter.com/geosolutions_it
-------------------------------------------------------
------------------------------------------------------------------------------
Put Bad Developers to Shame
Dominate Development with Jenkins Continuous Integration
Continuously Automate Build, Test & Deployment
Start a new project now. Try Jenkins in the cloud.
http://p.sf.net/sfu/13600_Cloudbees
_______________________________________________
GeoTools-Devel mailing list
GeoTools-Devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geotools-devel