"Fossies" - the Fresh Open Source Software Archive

Member "geoserver-2.18.1/user/tutorials/animreflector.html" (19 Nov 2020, 25651 Bytes) of package /linux/www/geoserver-2.18.1-htmldoc.zip:


The requested HTML page contains a <FORM> tag that is unusable on "Fossies" in "automatic" (rendered) mode so that page is shown as HTML source code syntax highlighting (style: standard) with prefixed line numbers. Alternatively you can here view or download the uninterpreted source code file.

    1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    2   "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    3 <html xmlns="http://www.w3.org/1999/xhtml" lang="en-US" xml:lang="en-US">
    4 <head>
    5   <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    6   
    7   <title>WMS Animator &mdash; GeoServer 2.18.1 User Manual</title>
    8   <link rel="stylesheet" href="../_static/blueprint/screen.css" type="text/css" media="screen, projection" />
    9   <link rel="stylesheet" href="../_static/blueprint/print.css" type="text/css" media="print" /> 
   10   <!--[if IE]>
   11   <link rel="stylesheet" href="../_static/blueprint/ie.css" type="text/css" media="screen, projection" />
   12   <![endif]-->
   13   <link rel="stylesheet" href="../_static/default.css" type="text/css" />
   14   <link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
   15   <script type="text/javascript">
   16     var DOCUMENTATION_OPTIONS = {
   17         URL_ROOT:    '../',
   18         VERSION:     '2.18.1',
   19         COLLAPSE_MODINDEX: false,
   20         FILE_SUFFIX: '.html'
   21     };
   22   </script>
   23   <script type="text/javascript" src="../_static/jquery.js"></script>
   24   <script type="text/javascript" src="../_static/doctools.js"></script>
   25   <script type="text/javascript" src="../_static/searchtools.js"></script>
   26   <script type="text/javascript" src="../searchindex.js"></script>
   27   <link rel="shortcut icon" href="../_static/geoserver.ico"/>
   28       <link rel="search" title="Search" href="../search.html" />
   29       <link rel="top" title="GeoServer 2.18.1 User Manual" href="../index.html" />
   30       <link rel="up" title="Tutorials" href="index.html" />
   31       <link rel="next" title="CQL and ECQL" href="cql/cql_tutorial.html" />
   32       <link rel="prev" title="WMS Reflector" href="wmsreflector.html" />
   33 </head>
   34 <body class="tutorials/animreflector">
   35   <div id="header" class="selfclear">
   36     <div class="wrap selfclear">
   37       <div id="logo"><a href="../index.html">GeoServer 2.18.1 User Manual</a></div>
   38       <ul id="top-nav">
   39         <li class="first"><a href="http://geoserver.org/about">About</a></li>
   40         <li><a href="http://blog.geoserver.org/">Blog</a></li>
   41         <li><a href="http://geoserver.org/download">Download</a></li>
   42         <!--<li><a href="../index.html">Documentation</a></li>-->
   43       </ul>
   44         <form id="quick-search" action="../search.html" method="get">
   45           <fieldset>
   46             <input type="hidden" name="check_keywords" value="yes" />
   47             <input type="hidden" name="area" value="default" />
   48             <input id="quick-search-query" type="text" name="q" accessKey="q" name="searchQuery.queryString" size="25" value="Search Documentation&hellip;" size="20" tabindex="3" onblur="if(this.value=='') this.value='Search Documentation&hellip;';" onfocus="if(this.value=='Search Documentation&hellip;') this.value='';" />
   49             <input id="quick-search-submit" type="image" value="Search" src="../_static/chrome/search_icon_green.png" />
   50           </fieldset>
   51         </form>
   52     </div><!-- /.wrap -->
   53   </div><!-- /#header -->
   54   <div id="main">
   55     <div class="wrap selfclear">
   56       <div id="content-left" class="content-border"></div>
   57       <div id="content">
   58 <ul id="breadcrumbs">
   59   
   60   <li><a href="../index.html">GeoServer 2.18.1 User Manual</a> &raquo;</li>
   61   <li><a href="index.html" accesskey="U">Tutorials</a> &raquo;</li>
   62   <li>WMS Animator</li>
   63 </ul>
   64 <ul id="relatedlinks" class="selfclear">
   65   <li class="first">
   66     <a href="../py-modindex.html" title="Python Module Index"
   67        accesskey="">modules</a></li>
   68   <li>
   69     <a href="cql/cql_tutorial.html" title="CQL and ECQL"
   70        accesskey="N">next</a>|</li>
   71   <li>
   72     <a href="wmsreflector.html" title="WMS Reflector"
   73        accesskey="P">previous</a>|</li>
   74 </ul>
   75         
   76   <div class="section" id="wms-animator">
   77 <span id="tutorials-animreflector"></span><h1>WMS Animator<a class="headerlink" href="#wms-animator" title="Permalink to this headline"></a></h1>
   78 <div class="section" id="overview">
   79 <h2>Overview<a class="headerlink" href="#overview" title="Permalink to this headline"></a></h2>
   80 <p>Standard WMS can generate static maps only.
   81 There is a number of use cases in which generating an animation is of interest.
   82 An obvious case is time-based animation.
   83 Other uses include elevation-based animation,
   84 varying the values of SQL View or SLD substitution parameters,
   85 or the changing the extent of the generated map to produce the appearance of a moving viewport.</p>
   86 <p>This capability is provided by the <strong>WMS Animator</strong>.
   87 The WMS Animator works in a similar way to the WMS Reflector.
   88 It uses a provided partial WMS request as a template,
   89 and the <strong>animator parameters</strong> are used to generate and execute a sequence of complete requests.
   90 The rendered map images are combined into a single output image (in a format that supports multi-frame images).</p>
   91 <p>The Animator is invoked by using the <code class="docutils literal notranslate"><span class="pre">wms/animate</span></code> request path.
   92 Any WMS paramaters can be animated, including nested ones such as <a class="reference internal" href="../styling/sld/extensions/substitution.html#sld-variable-substitution"><span class="std std-ref">SLD environment variables</span></a>.
   93 To define the appearance of the animation additional parameters are provided:</p>
   94 <ul class="simple">
   95 <li><p><strong>aparam</strong> specifies the name of the parameter that will be changed in the request for each frame.
   96 This can be any WMS parameter such as <code class="docutils literal notranslate"><span class="pre">layers</span></code>, <code class="docutils literal notranslate"><span class="pre">cql_filter</span></code>, <code class="docutils literal notranslate"><span class="pre">bbox</span></code>, <code class="docutils literal notranslate"><span class="pre">style</span></code> and so on.
   97 Nested parameters (such as required by the <code class="docutils literal notranslate"><span class="pre">format_options</span></code>, <code class="docutils literal notranslate"><span class="pre">env</span></code> and <code class="docutils literal notranslate"><span class="pre">view_params</span></code> parameters),
   98 are supported using the syntax of <code class="docutils literal notranslate"><span class="pre">param:name</span></code> (for example, <code class="docutils literal notranslate"><span class="pre">view_params:year</span></code>).</p></li>
   99 <li><p><strong>avalues</strong> is a comma-separated list of the values the animation parameter has for each frame.
  100 If a value contain commas these must be escaped using a backslash.
  101 (For instance, this occurs when providing BBOX values.)</p></li>
  102 </ul>
  103 <p>The Animator parses the input values and uses string replacement to generate the sequence of WMS requests to be executed.
  104 Each generated request is executed to produce one frame.
  105 It is up to the caller to ensure the provided animation parameters result in valid WMS requests.</p>
  106 <p>For example, to generate an animation of a layer with the viewport scrolling towards the east,
  107 the WMS BBOX parameter is given the series of values <code class="docutils literal notranslate"><span class="pre">-90,40,-60,70</span></code>, <code class="docutils literal notranslate"><span class="pre">-80,40,-60,70</span></code> and <code class="docutils literal notranslate"><span class="pre">-70,40,-50,70</span></code>
  108 (note the escaping of the commas in the BBOX values):</p>
  109 <div class="highlight-default notranslate"><div class="highlight"><pre><span></span>http://localhost:8080/geoserver/wms/animate
  110 ?layers=topp:states
  111 &amp;aparam=bbox
  112 &amp;avalues=-90\,40\,-60\,70,-80\,40\,-60\,70,-70\,40\,-50\,70
  113 </pre></div>
  114 </div>
  115 <p>For an example of nested parameters, assume the existence of a style named <code class="docutils literal notranslate"><span class="pre">selection</span></code> using an SLD variable <code class="docutils literal notranslate"><span class="pre">color</span></code>.
  116 The following request creates an animated map where the selection color changes between red, green and blue:</p>
  117 <div class="highlight-default notranslate"><div class="highlight"><pre><span></span>http://localhost:8080/geoserver/wms/animate
  118 ?layers=topp:states,topp:states
  119 &amp;styles=polygon,selection
  120 &amp;aparam=env:color
  121 &amp;avalues=FF0000,00FF00,0000FF
  122 </pre></div>
  123 </div>
  124 </div>
  125 <div class="section" id="using-the-wms-animator">
  126 <h2>Using the WMS Animator<a class="headerlink" href="#using-the-wms-animator" title="Permalink to this headline"></a></h2>
  127 <p>To invoke the WMS Animator specify the path <code class="docutils literal notranslate"><span class="pre">wms/animate</span></code> instead of <code class="docutils literal notranslate"><span class="pre">wms</span></code> in a GetMap request.</p>
  128 <p>Every Animator request must specify the <code class="docutils literal notranslate"><span class="pre">layers</span></code>, <code class="docutils literal notranslate"><span class="pre">aparam</span></code> and <code class="docutils literal notranslate"><span class="pre">avalues</span></code> parameters.
  129 Any other valid WMS parameters may be used in the request as well.
  130 If any necessary parameters are omitted, the Animator provides sensible default values for them.
  131 The following defaults are used:</p>
  132 <table class="colwidths-given docutils align-default">
  133 <colgroup>
  134 <col style="width: 50%" />
  135 <col style="width: 50%" />
  136 </colgroup>
  137 <tbody>
  138 <tr class="row-odd"><td><p><strong>Parameter</strong></p></td>
  139 <td><p><strong>Default Value</strong></p></td>
  140 </tr>
  141 <tr class="row-even"><td><p><code class="docutils literal notranslate"><span class="pre">request</span></code></p></td>
  142 <td><p><code class="docutils literal notranslate"><span class="pre">getmap</span></code></p></td>
  143 </tr>
  144 <tr class="row-odd"><td><p><code class="docutils literal notranslate"><span class="pre">service</span></code></p></td>
  145 <td><p><code class="docutils literal notranslate"><span class="pre">wms</span></code></p></td>
  146 </tr>
  147 <tr class="row-even"><td><p><code class="docutils literal notranslate"><span class="pre">version</span></code></p></td>
  148 <td><p><code class="docutils literal notranslate"><span class="pre">1.1.1</span></code></p></td>
  149 </tr>
  150 <tr class="row-odd"><td><p><code class="docutils literal notranslate"><span class="pre">format</span></code></p></td>
  151 <td><p><code class="docutils literal notranslate"><span class="pre">image/png</span></code></p></td>
  152 </tr>
  153 <tr class="row-even"><td><p><code class="docutils literal notranslate"><span class="pre">width</span></code></p></td>
  154 <td><p><code class="docutils literal notranslate"><span class="pre">512</span></code></p></td>
  155 </tr>
  156 <tr class="row-odd"><td><p><code class="docutils literal notranslate"><span class="pre">height</span></code></p></td>
  157 <td><p><code class="docutils literal notranslate"><span class="pre">512</span></code> if width is not specified</p></td>
  158 </tr>
  159 <tr class="row-even"><td><p><code class="docutils literal notranslate"><span class="pre">srs</span></code></p></td>
  160 <td><p><code class="docutils literal notranslate"><span class="pre">EPSG:4326</span></code>, or SRS common to all layers</p></td>
  161 </tr>
  162 <tr class="row-odd"><td><p><code class="docutils literal notranslate"><span class="pre">bbox</span></code></p></td>
  163 <td><p>bounds of specified layer(s)</p></td>
  164 </tr>
  165 <tr class="row-even"><td><p><code class="docutils literal notranslate"><span class="pre">styles</span></code></p></td>
  166 <td><p>default styles configured for specified layer(s)</p></td>
  167 </tr>
  168 </tbody>
  169 </table>
  170 <p>Further details of these parameters are:</p>
  171 <p><strong>layers</strong>: This is the only mandatory standard parameter. It is a comma-separated list of the layers to be included in the output map.</p>
  172 <p><strong>format</strong>: The default output format is <code class="docutils literal notranslate"><span class="pre">image/png</span></code>.
  173 Supported values are <code class="docutils literal notranslate"><span class="pre">image/jpeg</span></code> (suitable for raster backgrounds), <code class="docutils literal notranslate"><span class="pre">image/png8</span></code> (8-bit colors, smaller files) and <code class="docutils literal notranslate"><span class="pre">image/gif</span></code></p>
  174 <div class="admonition warning">
  175 <p class="admonition-title">Warning</p>
  176 <p>In order to produce an actual animated image the format must support animation. At this time the only one provide in GeoServer is <strong>image/gif;subtype=animated</strong></p>
  177 </div>
  178 <p><strong>width</strong>: Describes the width of the image. It defaults to 512 pixels, and can be calculated based on the specified height and the aspect ratio of the bounding box.</p>
  179 <p><strong>height</strong>: Describes the height of the image. It can be calculated based on the specified width and the aspect ratio of the bounding box.</p>
  180 <p><strong>bbox</strong>: Specifies the extent of the map frame.  The default bounding box is determined by taking the union of the bounds of the specified layers.
  181 (For example, if one layer shows Los Angeles and another shows New York, the default map shows most of the United States.
  182 The bounding box also determines the aspect ratio of the map.
  183 If only one of <code class="docutils literal notranslate"><span class="pre">width</span></code> or <code class="docutils literal notranslate"><span class="pre">height</span></code> is specified, the other is determined based on the aspect ratio of the bounding box.</p>
  184 <p><strong>styles</strong>: The default value is the default styles configured in GeoServer for the layers specified in the <code class="docutils literal notranslate"><span class="pre">layers</span></code> parameter.
  185 This can be overridden by providing a comma-separated list of style names (which must be known to the server).</p>
  186 <p><strong>srs</strong>: If all layers share the same SRS, this is used as the default value.
  187 Otherwise, the default value is EPSG:4326 (WGS84).</p>
  188 <div class="section" id="animation-options">
  189 <h3>Animation Options<a class="headerlink" href="#animation-options" title="Permalink to this headline"></a></h3>
  190 <p>The Animator provides options to control looping and frame speed.
  191 These are specified using the <code class="docutils literal notranslate"><span class="pre">format_options</span></code> <a class="reference internal" href="../services/wms/vendor.html#wms-vendor-parameters"><span class="std std-ref">WMS parameter</span></a>.
  192 The available options are:</p>
  193 <table class="colwidths-given docutils align-default">
  194 <colgroup>
  195 <col style="width: 50%" />
  196 <col style="width: 50%" />
  197 </colgroup>
  198 <tbody>
  199 <tr class="row-odd"><td><p><strong>Option</strong></p></td>
  200 <td><p><strong>Description</strong></p></td>
  201 </tr>
  202 <tr class="row-even"><td><p><code class="docutils literal notranslate"><span class="pre">gif_loop_continuously</span></code></p></td>
  203 <td><p>If <code class="docutils literal notranslate"><span class="pre">true</span></code> the animation will loop continuously.
  204 The default is <code class="docutils literal notranslate"><span class="pre">false</span></code>.</p></td>
  205 </tr>
  206 <tr class="row-odd"><td><p><code class="docutils literal notranslate"><span class="pre">gif_frames_delay</span></code></p></td>
  207 <td><p>Specifies the frame delay in milliseconds.
  208 The default is 1000 ms.</p></td>
  209 </tr>
  210 <tr class="row-even"><td><p><code class="docutils literal notranslate"><span class="pre">gif_disposal</span></code></p></td>
  211 <td><p>Specifies what to do with the previous GIF frame once a new frame is displayed.
  212 Valid values are <code class="docutils literal notranslate"><span class="pre">none</span></code>, <code class="docutils literal notranslate"><span class="pre">doNotDispose</span></code>, <code class="docutils literal notranslate"><span class="pre">backgroundColor</span></code> and <code class="docutils literal notranslate"><span class="pre">previous</span></code>.
  213 The default is <code class="docutils literal notranslate"><span class="pre">none</span></code>.</p></td>
  214 </tr>
  215 </tbody>
  216 </table>
  217 </div>
  218 <div class="section" id="example-1">
  219 <h3>Example 1<a class="headerlink" href="#example-1" title="Permalink to this headline"></a></h3>
  220 <p>Requests the layer <code class="docutils literal notranslate"><span class="pre">topp:states</span></code>,
  221 using the default style (<code class="docutils literal notranslate"><span class="pre">demographic</span></code>), width (512 pixels) and height (adjusted to aspect ratio).
  222 The <code class="docutils literal notranslate"><span class="pre">aparam=bbox</span></code> parameter specifies that the output animation has two frames, one using a whole-world extent and the other with the extent of the USA.
  223 This gives the effect of zooming in:</p>
  224 <div class="highlight-default notranslate"><div class="highlight"><pre><span></span>http://localhost:8080/geoserver/wms/animate
  225 ?layers=topp:states
  226 &amp;format=image/gif;subtype=animated
  227 &amp;aparam=bbox
  228 &amp;avalues=-180\,-90\,180\,90,-125\,25\,-67\,50
  229 </pre></div>
  230 </div>
  231 </div>
  232 <div class="section" id="example-2">
  233 <h3>Example 2<a class="headerlink" href="#example-2" title="Permalink to this headline"></a></h3>
  234 <p>Requests the layers <code class="docutils literal notranslate"><span class="pre">topp:states</span></code> and <code class="docutils literal notranslate"><span class="pre">sf:restricted</span></code>,
  235 using <code class="docutils literal notranslate"><span class="pre">format_options=gif_loop_continuosly:true</span></code> to request an infinite loop animation.
  236 The output map uses the default styles, the specified width (640 pixels), and the height automatically adjusted to the aspect ratio:</p>
  237 <div class="highlight-default notranslate"><div class="highlight"><pre><span></span>http://localhost:8080/geoserver/wms/animate
  238 ?layers=topp:states,sf:restricted
  239 &amp;format=image/gif;subtype=animated
  240 &amp;aparam=bbox
  241 &amp;avalues=-180\,-90\,180\,90,-125\,25\,-67\,50
  242 &amp;format_options=gif_loop_continuosly:true
  243 &amp;width=640
  244 </pre></div>
  245 </div>
  246 </div>
  247 <div class="section" id="example-3">
  248 <h3>Example 3<a class="headerlink" href="#example-3" title="Permalink to this headline"></a></h3>
  249 <p>The following request uses
  250 the <code class="docutils literal notranslate"><span class="pre">format_options</span></code> of <code class="docutils literal notranslate"><span class="pre">gif_loop_continuosly:true</span></code> and <code class="docutils literal notranslate"><span class="pre">gif_frames_delay:10</span></code>
  251 to rotate the map image fast and continuously:</p>
  252 <div class="highlight-default notranslate"><div class="highlight"><pre><span></span>http://localhost:8080/geoserver/wms/animate
  253 ?layers=topp:states,sf:restricted
  254 &amp;format=image/gif;subtype=animated
  255 &amp;aparam=angle
  256 &amp;avalues=0,45,90,135,180,225,270,365
  257 &amp;format_options=gif_loop_continuosly:true;gif_frames_delay:10
  258 &amp;width=640
  259 </pre></div>
  260 </div>
  261 </div>
  262 </div>
  263 <div class="section" id="displaying-frame-parameters-as-decorations">
  264 <h2>Displaying frame parameters as decorations<a class="headerlink" href="#displaying-frame-parameters-as-decorations" title="Permalink to this headline"></a></h2>
  265 <p>It is possible to decorate each frame image with the <code class="docutils literal notranslate"><span class="pre">avalue</span></code> parameter value that generated it using the
  266 <a class="reference internal" href="../services/wms/decoration.html#wms-decorations"><span class="std std-ref">WMS Decorations</span></a> <code class="docutils literal notranslate"><span class="pre">text</span></code> decoration.
  267 The current animation parameter value can be accessed via the <code class="docutils literal notranslate"><span class="pre">avalue</span></code> environment variable.
  268 (This environment variable can also be used in <a class="reference internal" href="../styling/sld/extensions/substitution.html#sld-variable-substitution"><span class="std std-ref">Variable substitution in SLD</span></a>.)</p>
  269 <p>Here is an example that uses a decoration showing the frame parameter value:</p>
  270 <div class="highlight-default notranslate"><div class="highlight"><pre><span></span>http://localhost:8080/geoserver/wms/animate
  271 ?layers=topp%3Aworld
  272 &amp;aparam=time
  273 &amp;avalues=2004-01-01T00:00:00.000Z,2004-02-01T00:00:00.000Z
  274 &amp;format=image/gif;subtype=animated
  275 &amp;format_options=layout:message
  276 </pre></div>
  277 </div>
  278 <p>It uses the following decoration layout, located in <code class="docutils literal notranslate"><span class="pre">layouts/message.xml</span></code>:</p>
  279 <div class="highlight-xml notranslate"><div class="highlight"><pre><span></span><span class="nt">&lt;layout&gt;</span>
  280   <span class="nt">&lt;decoration</span> <span class="na">type=</span><span class="s">&quot;text&quot;</span> <span class="na">affinity=</span><span class="s">&quot;bottom,right&quot;</span> <span class="na">offset=</span><span class="s">&quot;6,6&quot;</span><span class="nt">&gt;</span>
  281     <span class="nt">&lt;option</span> <span class="na">name=</span><span class="s">&quot;message&quot;</span> <span class="na">value=</span><span class="s">&quot;${avalue}&quot;</span><span class="nt">/&gt;</span>
  282     <span class="nt">&lt;option</span> <span class="na">name=</span><span class="s">&quot;font-size&quot;</span> <span class="na">value=</span><span class="s">&quot;12&quot;</span><span class="nt">/&gt;</span>
  283     <span class="nt">&lt;option</span> <span class="na">name=</span><span class="s">&quot;font-family&quot;</span> <span class="na">value=</span><span class="s">&quot;Arial&quot;</span><span class="nt">/&gt;</span>
  284     <span class="nt">&lt;option</span> <span class="na">name=</span><span class="s">&quot;halo-radius&quot;</span> <span class="na">value=</span><span class="s">&quot;2&quot;</span><span class="nt">/&gt;</span>
  285   <span class="nt">&lt;/decoration&gt;</span>
  286 <span class="nt">&lt;/layout&gt;</span>
  287 </pre></div>
  288 </div>
  289 </div>
  290 <div class="section" id="specifying-wms-animator-default-behaviour">
  291 <h2>Specifying WMS Animator default behaviour<a class="headerlink" href="#specifying-wms-animator-default-behaviour" title="Permalink to this headline"></a></h2>
  292 <p>The GeoServer Adinistrator GUI allows specifying some limits and default options for the WMS Animator.
  293 The settings are made on the <span class="guilabel">Services &gt; WMS</span> config screen as shown below:</p>
  294 <div class="figure align-center" id="id1">
  295 <img alt="../_images/animator_wms_params.jpg" src="../_images/animator_wms_params.jpg" />
  296 <p class="caption"><span class="caption-text"><em>WMS Animator default settings</em></span><a class="headerlink" href="#id1" title="Permalink to this image"></a></p>
  297 </div>
  298 <p>The first three options set server limits on the animation output.
  299 It is possible to set the <strong>maximum number of frames</strong> an animation can contain, the <strong>maximum rendering time</strong> to produce an animation and the <strong>maximum size</strong> of the whole animation.</p>
  300 <p>The default animation
  301 <strong>frame delay</strong> (expressed in ms) <strong>looping behaviour</strong> and <strong>disposal method</strong> can be set as well.
  302 These values can be overridden by using the <code class="docutils literal notranslate"><span class="pre">format_options</span></code> parameter as described above.</p>
  303 </div>
  304 </div>
  305 
  306 
  307       <div class="selfclear pagination-nav">
  308           <div class="leftwise"><strong>Previous</strong>: <a href="wmsreflector.html" title="previous chapter">WMS Reflector</a></div>
  309           <div class="rightwise"><strong>Next</strong>: <a href="cql/cql_tutorial.html" title="next chapter">CQL and ECQL</a></div>
  310       </div>
  311       </div><!-- /#content> -->
  312       <div id="content-right" class="content-border"></div>
  313   <div id="sidebar" class="contrast">
  314       <div id="toc" class="section">
  315         <h3 class="pngfix">Table Of Contents</h3>
  316         <ul>
  317 <li><a class="reference internal" href="#">WMS Animator</a><ul>
  318 <li><a class="reference internal" href="#overview">Overview</a></li>
  319 <li><a class="reference internal" href="#using-the-wms-animator">Using the WMS Animator</a><ul>
  320 <li><a class="reference internal" href="#animation-options">Animation Options</a></li>
  321 <li><a class="reference internal" href="#example-1">Example 1</a></li>
  322 <li><a class="reference internal" href="#example-2">Example 2</a></li>
  323 <li><a class="reference internal" href="#example-3">Example 3</a></li>
  324 </ul>
  325 </li>
  326 <li><a class="reference internal" href="#displaying-frame-parameters-as-decorations">Displaying frame parameters as decorations</a></li>
  327 <li><a class="reference internal" href="#specifying-wms-animator-default-behaviour">Specifying WMS Animator default behaviour</a></li>
  328 </ul>
  329 </li>
  330 </ul>
  331 
  332         <div class="section-footer"></div>
  333       </div>
  334         <div class="section">
  335           <h3>Continue Reading</h3>
  336           <ul>
  337             <li>Previous: <a href="wmsreflector.html" title="previous chapter">WMS Reflector</a></li>
  338             <li>Next: <a href="cql/cql_tutorial.html" title="next chapter">CQL and ECQL</a></li>
  339           </ul>
  340         </div>
  341         <div class="section">
  342         <h3>This Page</h3>
  343         <ul class="this-page-menu">
  344                 
  345         <li><a href="https://github.com/geoserver/geoserver/tree/master/doc/en/user/source/tutorials/animreflector.rst">Edit</a></li>
  346         </ul>
  347         </div>
  348   </div><!-- /#sidebar -->
  349   </div><!-- /.wrap> -->
  350 </div><!-- /#main -->
  351 <div id="footer">
  352   <div class="wrap">
  353     &copy; Copyright 2020, Open Source Geospatial Foundation. License <a href="http://creativecommons.org/licenses/by/3.0/">Creative Commons Attribution</a>.
  354     Last updated on Nov 19, 2020.
  355     Created using <a href="http://sphinx.pocoo.org/">Sphinx</a>.
  356   </div><!-- /.wrap> -->
  357 </div><!-- /#footer -->
  358   </body>
  359 </html>