Book Image

OpenLayers 3: Beginner's Guide

By : Thomas Gratier, Paul Spencer, Erik Hazzard
Book Image

OpenLayers 3: Beginner's Guide

By: Thomas Gratier, Paul Spencer, Erik Hazzard

Overview of this book

<p>This book is a practical, hands-on guide that provides you with all the information you need to get started with mapping using the OpenLayers 3 library.</p> <p>The book starts off by showing you how to create a simple map. Through the course of the book, we will review each component needed to make a map in OpenLayers 3, and you will end up with a full-fledged web map application. You will learn the key role of each OpenLayers 3 component in making a map, and important mapping principles such as projections and layers. You will create your own data files and connect to backend servers for mapping. A key part of this book will also be dedicated to building a mapping application for mobile devices and its specific components.</p>
Table of Contents (22 chapters)
OpenLayers 3 Beginner's Guide
Credits
About the Authors
About the Reviewers
www.PacktPub.com
Preface
Index

Time for action – using ol.Overlay dynamically with layers information


In this case, we will reuse just the previous example as a model.

  1. So, copy the previous example's code in a new HTML page named 2360_08_06_layer_overlay.html.

  2. Remove the string <b>OpenLayers 3 Code Sprint</b> <i>Humanities A3</i> from the HTML.

  3. Then, just after the osmLayer declaration, add the following code, where we are reusing again the vectorEuropa layer with the styles:

    var selectEuropa = new ol.style.Style({
      stroke: new ol.style.Stroke({
        color: '#ff0000',
        width: 2
      })
    });
    
    var defaultEuropa = new ol.style.Style({
      stroke: new ol.style.Stroke({
        color: '#0000ff',
        width: 2
      })
    });
    
    var vectorEuropa = new ol.layer.Vector({
      id: 'europa',
      source: new ol.source.GeoJSON({
        projection: 'EPSG:3857',
        url: '../assets/data/nutsv9_lea.geojson'
      }),
      style: defaultEuropa
    });
  4. Add an ol.interaction.Select component, as shown in the following code.

    var selectInteraction = new ol...