Book Image

OpenLayers Cookbook

Book Image

OpenLayers Cookbook

Overview of this book

Data visualization and analysis has become an important task for many companies. Understanding the basic concepts of GIS and knowing how to visualize data on a map is a required ability for many professionals today. OpenLayers is a JavaScript library to load, display, and render maps from multiple sources on web pages."OpenLayers Cookbook" teaches how to work with OpenLayers, one of the most important and complete open source JavaScript libraries.Through an extensive set of recipes, this book shows how to work with the main concepts required to build a GIS web applicationñ maps, raster and vector layers, styling, theming, and so on."OpenLayers Cookbook" includes problem solving and how-to recipes for the most common and important tasks. A wide range of topics are covered.The range of recipes includes: creating basic maps, working with raster and vector layers, understanding events and working with main controls, reading features from different data sources, styling features, and understanding the underlying architecture."OpenLayers Cookbook" describes solutions and optimizations to problems commonly found.
Table of Contents (15 chapters)
OpenLayers Cookbook
Credits
About the Author
About the Reviewers
www.PacktPub.com
Preface
Index

Creating features programmatically


Loading data from an external source is not the only way to work with vector layers.

Imagine a web mapping application where the user can create new features on the fly: cities, rivers, areas of interest, and so on, and add them to a vector layer with some style. This scenario requires the ability to create and add the features programmatically.

In this recipe we will see some ways to create and manage features programmatically.

How to do it...

  1. Start by creating a new HTML file with the required OpenLayers dependencies. Add the div element to hold the map:

    <!-- Map DOM element -->
    <div id="ch3_features_programmatically" style="width: 100%; height: 100%;"></div>
  2. Next, initialize the map instance and add a base layer:

    <!-- The magic comes here -->
    <script type="text/javascript">
    
        // Create the map using the specified DOM element
        var map = new OpenLayers.Map("ch3_features_programmatically");    
        
        // Add a WMS layer
    ...