Hello,

I'm drawing a windbarb layer following Geoserver documentation and 
examples from GeoSolutions blog. Everything works well except tiled mode 
- nasty artefacts between adjacent tiles are easily to spot, eg:

https://geo.nebula.grid.icm.edu.pl:8443/geoserver/um/wms?service=WMS&version=1.1.0&request=GetMap&layers=um:wind_wgs2&styles=&bbox=0.2635588889068249,44.05613912816206,38.74505907998744,66.78182100121094&width=558&height=330&srs=EPSG:4326&format=application/openlayers#toggle

Remember to switch mode to "Tiled", zoom to, say 1:2M and pan to 22East, 
56North.

If I remember well, user manual states that this can happen in case of 
mixing tiles with some WPS field functions. Is it possible to use any 
workaround for that?


Regards

Maciej

P.S. Style definition follows:

<StyledLayerDescriptor version="1.0.0"
   xmlns="http://www.opengis.net/sld"; xmlns:gml="http://www.opengis.net/gml";
   xmlns:ogc="http://www.opengis.net/ogc"; 
xmlns:xlink="http://www.w3.org/1999/xlink";
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
   xsi:schemaLocation="http://www.opengis.net/sld 
./StyledLayerDescriptor.xsd">
    <NamedLayer>
       <Name>windbarbs</Name>
       <UserStyle>
          <Title>windbarbs</Title>
          <FeatureTypeStyle>
             <Transformation>
                <ogc:Function name="ras:RasterAsPointCollection">
                   <ogc:Function name="parameter">
                      <ogc:Literal>data</ogc:Literal>
                   </ogc:Function>
                   <ogc:Function name="parameter">
                     <ogc:Literal>interpolation</ogc:Literal>
                     <ogc:Literal>InterpolationBilinear</ogc:Literal>
                   </ogc:Function>
                   <ogc:Function name="parameter">
                     <ogc:Literal>scale</ogc:Literal>
                     <ogc:Function name="Categorize">
                      <ogc:Function name="env">
                        <ogc:Literal>wms_scale_denominator</ogc:Literal>
                      </ogc:Function>
                        <ogc:Literal>1</ogc:Literal>
                        <ogc:Literal>1000000</ogc:Literal>
                        <ogc:Literal>0.6</ogc:Literal>
                        <ogc:Literal>2000000</ogc:Literal>
                        <ogc:Literal>0.3</ogc:Literal>
                        <ogc:Literal>4000000</ogc:Literal>
                        <ogc:Literal>0.15</ogc:Literal>
                        <ogc:Literal>8000000</ogc:Literal>
                        <ogc:Literal>0.075</ogc:Literal>
                        <ogc:Literal>16000000</ogc:Literal>
                        <ogc:Literal>0.0375</ogc:Literal>
                     </ogc:Function>
                   </ogc:Function>
                </ogc:Function>
             </Transformation>
             <Rule>
                <MaxScaleDenominator>20000000</MaxScaleDenominator>
                <PointSymbolizer>
                   <Graphic>
                      <Mark>
                        <WellKnownName>windbarbs://default(
                          <ogc:Mul>
                          <ogc:PropertyName>speed</ogc:PropertyName>
                            <ogc:Literal>1</ogc:Literal>
                          </ogc:Mul>
                          )[m/s]
                        </WellKnownName>
                           <Stroke>
                              <CssParameter 
name="stroke">000000</CssParameter>
                              <CssParameter 
name="stroke-width">1</CssParameter>
                           </Stroke>
                        </Mark>
                        <Size>
                         <ogc:Function name="Categorize">
                             <!-- Value to transform -->
                           <ogc:PropertyName>speed</ogc:PropertyName>
                               <ogc:Literal>6</ogc:Literal>
                               <ogc:Literal>1.543333332</ogc:Literal>
                               <ogc:Literal>20</ogc:Literal>
                            </ogc:Function>
                        </Size>
                        <Rotation>
                           <ogc:Function name="Categorize">
 
<ogc:PropertyName>speed</ogc:PropertyName>
                                <!-- Output values and thresholds -->
                                <ogc:Literal>0</ogc:Literal>
                                <ogc:Literal>1.543333332</ogc:Literal>
                                <ogc:Add>
                                 <ogc:Literal>180</ogc:Literal>
 
<ogc:PropertyName>direction</ogc:PropertyName>
                                </ogc:Add>
                         </ogc:Function>
                      </Rotation>
                   </Graphic>
                </PointSymbolizer>
                <PointSymbolizer>
                   <Graphic>
                      <Mark>
                        <WellKnownName>circle</WellKnownName>
                         <Fill>
                            <CssParameter name="fill">
                               <ogc:Literal>#ff0000</ogc:Literal>
                            </CssParameter>
                         </Fill>
                      </Mark>
                      <Size>3</Size>
                   </Graphic>
                </PointSymbolizer>
             </Rule>
          </FeatureTypeStyle>
       </UserStyle>
    </NamedLayer>
</StyledLayerDescriptor>

------------------------------------------------------------------------------
Dive into the World of Parallel Programming The Go Parallel Website, sponsored
by Intel and developed in partnership with Slashdot Media, is your hub for all
things parallel software development, from weekly thought leadership blogs to
news, videos, case studies, tutorials and more. Take a look and join the 
conversation now. http://goparallel.sourceforge.net/
_______________________________________________
Geoserver-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/geoserver-users

Reply via email to