Render geometries to a canvas

Example of rendering geometries to an arbitrary canvas.

This example shows how to render geometries to an arbitrary canvas.

<!DOCTYPE html>
<html>
  <head>
    <title>Render geometries to a canvas</title>
    <link rel="stylesheet" href="http://openlayers.org/en/v3.16.0/css/ol.css" type="text/css">
    <script src="http://openlayers.org/en/v3.16.0/build/ol.js"></script>
  </head>
  <body>
    <canvas id="canvas"></canvas>
    <script>
      var canvas = document.getElementById('canvas');
      var vectorContext = ol.render.toContext(canvas.getContext('2d'), {size: [100, 100]});

      var fill = new ol.style.Fill({color: 'blue'});
      var stroke = new ol.style.Stroke({color: 'black'});
      var style = new ol.style.Style({
        fill: fill,
        stroke: stroke,
        image: new ol.style.Circle({
          radius: 10,
          fill: fill,
          stroke: stroke
        })
      })
      vectorContext.setStyle(style);

      vectorContext.drawGeometry(new ol.geom.LineString([[10, 10], [90, 90]]));
      vectorContext.drawGeometry(new ol.geom.Polygon([[[2, 2], [98, 2], [2, 98], [2, 2]]]));
      vectorContext.drawGeometry(new ol.geom.Point([88, 88]));
    </script>
  </body>
</html>