Book Image

QGIS Python Programming Cookbook

Book Image

QGIS Python Programming Cookbook

Overview of this book

Table of Contents (16 chapters)
QGIS Python Programming Cookbook
Credits
About the Author
About the Reviewers
www.PacktPub.com
Preface
Index

Adding a line feature to a vector layer


Adding a line to a vector layer in QGIS is identical to adding a single point, but here you just have to add more points to the QgsGeometry object.

Getting ready

For this recipe, you will need to download a zipped line shapefile that contains two line features from https://geospatialpython.googlecode.com/svn/paths.zip.

Extract the ZIP file to a directory named paths in your /qgis_data directory.

How to do it...

In this recipe, we will load the line layer from the shapefile, build a list of points, create a new geometry object, and add the points as a line. We will also create a new feature, set the geometry, and add it to the layer's data provider. Finally, we will update the extent of the layer to make sure that the bounding box of the layer encapsulates the new feature:

  1. Start QGIS.

  2. From the Plugins menu, select Python Console.

  3. First, load the line layer and ensure that it is valid:

    vectorLyr =  QgsVectorLayer('/qgis_data/paths/paths.shp', 'Paths' , "ogr"...