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 – interacting with features


To wrap up our chapter on vector layers, let's combine our knowledge of layers, sources, and features and create a small application that displays the name of a country when we hover over it with the mouse:

  1. Let's start with a simple vector layer based on the GeoJSON file containing the country data. This is how we started the chapter!

    var source = new ol.source.GeoJSON({
      projection: 'EPSG:3857',
      url: '../assets/data/countries.geojson'
    });
    var countries = new ol.layer.vector({
      source: source
    });
    var center = ol.proj.transform([0, 0], 'EPSG:4326', 'EPSG:3857');
    var view = new ol.View({
      center: center,
      zoom: 1,
    });
    var map = new ol.Map({
      target: 'map',
      layers: [countries],
      view: view
    });
  2. Next, we'll hook up to the pointermove event provided by the map object. If you don't remember anything about map events, review Chapter 3, Charting the Map Class:

    map.on('pointermove', onMouseMove);
  3. Now, add the onMouseMove function:

    function onMouseMove...