Outdated version of the documentation. Find the latest one here.

` `

Lagen maken

Layers can be created in many ways, including:

  • empty layers from scratch;
  • layers from existing layers;
  • layers from the clipboard;
  • layers as a result of an SQL-like query based on one or many layers: the virtual layer.

QGIS also provides tools to import/export different formats.

Creating new vector layers

QGIS allows you to create new Shapefile layers, new SpatiaLite layers, new GPX layers and new Temporary Scratch layers. Creation of a new GRASS layer is supported within the GRASS plugin. (Please refer to section Maken van een nieuwe GRASS vectorlaag for more information on creating GRASS vector layers.)

Nieuwe Shapefile-laag maken

To create a new Shapefile layer, choose Create Layer ‣ newVectorLayer New Shapefile Layer... from the Layer menu. The New Shapefile Layer dialog will be displayed as shown in figure_create_shapefile. Choose the type of layer (point, line or polygon) and the CRS (coordinate reference system).

Note that QGIS does not yet support creation of 2.5D features (i.e., features with X,Y,Z coordinates).


Dialoogvenster Nieuwe Shapefile-laag maken

To complete the creation of the new Shapefile layer, add the desired attributes by specifying a name and type for each attribute and clicking on the [Add to fields list] button. A first ‘id’ column is added by default but can be removed, if not wanted. Only Decimal number selectString, Whole number selectString, Text data selectString and Date selectString attributes are supported. Additionally, depending on the attribute type, you can also define the length and precision of the new attribute column. Once you are happy with the attributes, click [OK] and provide a name for the Shapefile. QGIS will automatically add the .shp extension to the name you specify. Once the Shapefile has been created, it will be added to the map as a new layer, and you can edit it in the same way as described in section Het digitaliseren van een bestaande kaartlaag.

Het maken van een nieuwe SpatiaLite-aag

To create a new SpatiaLite layer for editing, choose New ‣ newSpatiaLiteLayer New SpatiaLite Layer... from the Layer menu. The New SpatiaLite Layer dialog will be displayed as shown in Figure_create_spatialite.


Dialoogvenster Nieuwe SpatiaLite-laag maken

The first step is to select an existing SpatiaLite database or to create a new SpatiaLite database. This can be done with the browse button browseButton to the right of the database field. Then, add a name for the new layer, define the layer type, and specify the coordinate reference system with [Specify CRS]. If desired, you can select checkbox Create an autoincrementing primary key.

To define an attribute table for the new SpatiaLite layer, add the names of the attribute columns you want to create with the corresponding column type, and click on the [Add to attribute list] button. Once you are happy with the attributes, click [OK]. QGIS will automatically add the new layer to the legend, and you can edit it in the same way as described in section Het digitaliseren van een bestaande kaartlaag.

De DB Manager kan gebruikt worden voor overig beheer van SpatiaLite lagen. Zie Plug-in DB Manager.

Creating a new GeoPackage layer

To create a new GeoPackage layer go to Layer ‣ New ‣ newGeoPackageLayer New GeoPackage Layer.... The New GeoPackage Layer dialog will be displayed as shown in figure_create_geopackage.


Creating a New GeoPackage layer dialog

The first step is to select an existing GeoPackage or create a new one. This can be done by pressing the ellipses [...] button at the right of the Database field. Then, give a name for the new layer, define the layer type and specify the coordinate reference system with [Specify CRS].

To define an attribute table for the new GeoPackage layer, add the names of the attribute columns you want to create with the corresponding column type, and click on the [Add to fields list] button. Once you are happy with the attributes, click [OK]. QGIS will automatically add the new layer to the legend, and you can edit it in the same way as described in section Het digitaliseren van een bestaande kaartlaag.

Een nieuwe GPX-laag maken

U moet, om een nieuw GPX-bestand aan te kunnen maken, eerst de plug-in GPS laden. menuselection:Plug-ins –> showPluginManager Plug-ins beheren en installeren ... opent het dialoogvenster Plug-ins beheren en installeren. Activeer het keuzevak checkbox GPS-gereedschap.

When this plugin is loaded, choose New ‣ createGPX Create new GPX Layer... from the Layer menu. In the Save new GPX file as dialog, choose where to save the new file and press [Save]. Three new layers are added to the Layers Panel: waypoints, routes and tracks with predefined structure.

Een nieuwe tijdelijke tekenlaag maken

Temporary Scratch Layers are in-memory layers, meaning that they are not saved on disk and will be discarded when QGIS is closed. They can be handy to store features you temporarily need or as intermediate layers during geoprocessing operations.

Empty, editable temporary scratch layers can be defined using Layer ‣ Create Layer ‣ New Temporary Scratch Layer. Here you can create radioButtonOffMultipoint, radioButtonOffMultiline and radioButtonOffMultipolygon Layers beneath radioButtonOnPoint, radioButtonOffLine and radioButtonOffPolygon layers.

You can also create Temporary Scratch Layers from the clipboard. See Creating new layers from the clipboard.

Creating new layers from an existing layer

Both raster and vector layers can be saved in a different format and/or reprojected to a different coordinate reference system (CRS) using the Save As... function in the layer context menu (by right-clicking in the layer in the layer tree) or in the Layer ‣ Save As... menu.

Algemene parameters

The Save As dialog shows several parameters to change the behavior when saving the layer. Common parameters for raster and vector are:

  • Format
  • Bestandsnaam

  • CRS can be changed to reproject the data
  • Add saved file to map to add the new layer to the canvas
  • Bereik (mogelijke waarden zijn bereik laag, kaartweergave of gebruikergedefinieerd)

Sommige parameters zijn echter specifiek voor raster- en vectorindelingen:

Rasterspecifieke parameters

  • Modus uitvoer (kan zijn ruwe gegevens of gerenderde afbeelding)

  • Resolutie

  • Create Options: advanced options (file compression, block sizes, colorimetry...) to fine tune the output file. See the gdal-ogr driver documentation.
  • Piramides maken

  • VRT Tiles
  • Waarden Geen gegevens


Als nieuwe rasterlaag opslaan

Vectorspecifieke parameters

Afhankelijk van de indeling voor het exporteren, zijn enkele van deze opties beschikbaar of niet:

  • Codering

  • Alleen geselecteerde objecten opslaan

  • Velden om te exporteren en hun opties voor exporteren selecteren. In het geval u het gedrag van uw velden instelt met sommige Edit widgets, bijv. unieke waarde, kunt u de weergegeven waarden in de laag behouden door te selecteren checkbox Alle geselecteerde ruwe veldwaarden vervangen door hun weergegeven waarden.

  • Exporteren van symbologie: kan voornamelijk worden gebruikt voor exporteren naar DXF en voor alle bestandsindelingen die objectstijlen voor OGR beheren (zie opmerking hieronder) zoals DXF, KML, tab-bestandsindelingen:

    • Geen symbologie: standaard stijl van de toepassing die de gegevens leest

    • Objectsymbologie: stijl opslaan met OGR objectstijlen (zie opmerking hieronder)

    • Symboollaagsymbologie: opslaan met OGR objectstijlen (zie opmerking hieronder) maar exporteer dezelfde geometrie meerdere keren als er meerdere symbologie symboollagen worden gebruikt

    • Op de laatste opties kan een waarde Schaal worden toegepast.


OGR Feature Styles are a way to store style directly in the data as a hidden attribute. Only some formats can handle this kind of information. KML, DXF and TAB file formats are such formats. For advanced users, you can read the OGR Feature Styles specification document.

  • Geometrie: u kunt de mogelijkheden voor de geometrie van de uitvoerlaag configureren

    • geometry type: keep the original geometry of the features when set to Automatic, otherwise removes or overrides it with any type. You can add an empty geometry column to an attribute table, remove the geometry column of a spatial layer.
    • Force multi-type: force creation of multi-geometry features in the layer
    • Z-dimensie opnemen in geometrieën.


Overriding layer geometry type makes it possible to do things like save a geometryless table (e.g. .csv file) into a shapefile WITH any type of geometry (point, line, polygon), so that geometries can then be manually added to rows with the addPart Add Part tool .

  • Datasources Options, Layer Options or Custom Options which allow you to configure some advanced parameters. See the gdal-ogr driver documentation.

Als nieuwe vectorlaag opslaan

Bij het opslaan van een vectorlaag in een reeds bestaand bestand, afhankelijk van de mogelijkheden van de indeling voor de uitvoer (Geopackage, SpatiaLite, FileGDB...), kan de gebruiker beslissen om:

  • het gehele bestand te overschrijven

  • alleen de doellaag te overschrijven (de laagnaam is aan te passen)

  • objecten toe te voegen aan de bestaande doellaag

  • objecten toe te voegen, nieuwe velden toe te voegen indien die er zijn.

Voor indelingen zoals ESRI Shapefile, MapInfo .tab is het toevoegen van objecten ook beschikbaar.

Creating new DXF files

Besides the Save As... dialog which provides options to export a single layer to another format, including *.DXF, QGIS provides another tool to export multiple layers as a single DXF layers. It’s accessible in the Project ‣ DXF Export... menu.

The DXF Export dialog allows the user to:

  • indicate the destination layer file;

  • choose the symbology mode and scale (see the OGR Feature Styles note);

  • select the encoding and CRS;

  • check the loaded layers to include in the DXF files or pick them from an existing visibility preset.

    For each layer, you can choose a field whose values are used to split features in generated destination layers in the DXF output. You can also choose to checkbox Use the layer title as name if set and keep features grouped.

  • choose to only Export features intersecting the current map extent.

Creating new layers from the clipboard

Objecten die op het klembord staan kunnen worden geplakt in een nieuwe laag. maak de laag eerst bewerkbaar om dit te kunnen doen. Selecteer enkele objecten, kopieer ze naar het klembord en plak ze dan in de nieuwe laag met behulp van Bewerken ‣ Objecten plakken als ‣ en kies:

  • New Vector Layer...: you need to select the layer CRS, poping up the Save vector layer as... dialog from which you can select any supported data format (see Creating new layers from an existing layer for parameters);
  • or Temporary Scratch Layer...: you need to select the layer CRS and give a name.

Een nieuwe laag, gevuld met geselecteerde objecten en hun attributen wortd gemaakt en toegevoegd aan het kaartvenster, indien daarnaar gevraagd.


Creating layers from clipboard applies to features selected and copied within QGIS and also to features from another source defined using well-known text (WKT).

Creating virtual layers

Virtual layers are a special kind of vector layer. They allow you to define a layer as the result of an SQL query involving any number of other vector layers that QGIS is able to open. Virtual layers do not carry data by themselves and can be seen as views to other layers.

To create a virtual layer, open the virtual layer creation dialog by clicking on Add Virtual Layer in the Layer menu or from the corresponding toolbar.

The dialog allows you to specify a Layer name and an SQL Query. The query can use the name (or id) of loaded vector layers as tables, as well as their field names as columns.

Indien u bijvoorbeeld een laag heeft die is genaamd airports, kunt u een nieuwe virtuele laag maken die is genaamd public_airports met een SQL-query als:

FROM airports
WHERE USE = "Civilian/Public"

The SQL query will be executed, regardless of the underlying provider of the airports layer, even if this provider does not directly support SQL queries.


Dialoogvenster Virtuele laag maken

Joins and complex queries can also be created, for example, to join airports and country information:

SELECT airports.*, country.population
FROM airports
JOIN country
ON airports.country = country.name


Het is ook mogelijk virtuele lagen te maken met behulp van het venster SQL van Plug-in DB Manager.

Embedding layers for use in queries

Naast de beschikbare vectorlagen in het kaartvenster, kan de gebruiker lagen toevoegen aan de lijst Ingebedde lagen, die hij kan gebruiken in query’s zonder de noodzaak om ze weer te geven in het kaartvenster of het paneel Lagen.

Klik, om een laag in te bedden, op Toevoegen en geef de Lokale naam, Provider, Codering en het pad naar de Bron op.

De knop Importeren maakt het mogelijk lagen, die zijn geladen in het kaartvenster, toe te voegen aan de lijst Ingebedde lagen. Dit maakt het mogelijk deze lagen later uit het paneel Lagen te verwijderen zonder ene bestaande query te beschadigen.

Supported query language

Het onderliggende programma gebruikt SQLite en SpatiaLite voor bewerkingen.

Dat betekent dat u alles voor SQL kunt gebruiken dat uw lokale installatie van SQLite begrijpt.

Functies uit SQLite en ruimtelijke functies uit SpatiaLite kunnen ook worden gebruikt voor een query voor een virtuele laag. Maken van bijvoorbeeld een puntenlaag uit een laag met alleen attributen kan worden gedaan met een query soortgelijk aan:

SELECT id, MakePoint(x, y, 4326) as geometry
FROM coordinates

Functies van expressies van QGIS kunnen ook worden gebruikt in een query voor een virtuele laag.

Gebruik de naam geometry om te verwijzen naar de geometriekolom van een laag.

In tegenstelling tot een pure query in SQL, moeten alle velden voor een virtuele laag worden benoemd. Vergeet niet het sleutelwoord as te gebruiken om uw kolommen te benoemen als zij het resultaat zijn van een berekening of aanroep van een functie.

Problemen bij de uitvoering

Als standaard parameters zijn ingesteld, zal het programma voor de virtuele laag zijn best doen om de verschillende typen kolommen van de query te detecteren, inclusief het type van de geometriekolom als er een aanwezig is.

Dit wordt gedaan door middel van introspectie van de query indien mogelijk of door, als laatste middel, de eerste rij van de query op te halen (LIMIT 1). Ophalen van de eerste rij voor slechts het maken van de laag zou ongewenst kunnen zijn om redenen van uitvoering.

Het dialoogvenster voor het maken maakt het mogelijk verschillende parameters te specificeren:

  • Unieke kolom voor identificatie: deze optie maakt het mogelijk te specificeren welk veld van de query de unieke integere waarden weergeeft die QGIS kan gebruiken als identificatie voor de rijen. Standaard wordt een zichzelf ophogende waarde integer gebruikt. Specificeren van een unieke kolom voor identificatie maakt het mogelijk het selecteren van rijen op ID te versnellen.

  • Geen geometrie: deze optie forceert de virtuele laag om een veld voor geometrie te negeren. De resulterende laag is een laag met alleen attributen.

  • Geometrie:guilabel;`kolom`: deze optie maakt het mogelijk de naam van de kolom te specificeren die moet worden gebruikt als de geometrie voor de laag.

  • Geometrie :guilabel;`Type`: deze optie maakt het mogelijk het type geometrie voor de virtuele laag te specificeren.

  • Geometrie CRS: deze optie maakt het mogelijk het coördinaten referentiesystem voor de virtuele laag te specificeren.

Speciale opmerkingen

Het programma voor de virtuele laag probeert het type te bepalen voor elke kolom van de query. Als dat mislukt wordt de eerste rij van de query opgehaald om typen kolommen te bepalen.

Het type van een bepaalde kolom kan direct in de query worden gespecificeerd met behulp van enkele speciale opmerkingen.

De syntaxis is de volgende: /*:type*/. Het moet worden geplaatst net na de naam van een kolom. type mag zijn int voor integers, real voor floating point numbers of text.


SELECT id+1 as nid /*:int*/
FROM table

Het type en coördinaten referentiesysteem van de geometriekolom kan ook worden ingesteld dankzij speciale opmerkingen met de volgende syntaxis /*:gtype:srid*/ waar gtype het type geometrie is (point, linestring, polygon, multipoint, multilinestring of multipolygon) en srid een integer die de code voor EPSG van een coördinaten referentiesysteem weergeeft.

Indexen gebruiken

Bij het verzoeken om een laag door middel van een virtuele laag zullen indexen van de bronlaag op de volgende manieren worden gebruikt:

  • als een predicaat = wordt gebruikt in de kolom voor de primaire sleutel van de laag, zal de onderliggende gegevensprovider worden gevraagd naar een bepaalde ID (FilterFid)

  • voor elk ander predicaat (>, <=, !=, etc.) of op een kolom zonder primaire sleutel zal een verzoek dat is opgebouwd uit een expressie worden gebruikt om de onderliggende gegevensprovider te bevragen. Dat betekent dat indexen, als zij bestaan, kunnen worden gebruikt voor databaseproviders.

Er bestaat een specifieke syntaxis om ruimtelijke predicaten in verzoeken af te handelen en het gebruiken van ene ruimtelijke index te activeren: er bestaat voor elke virtuele laag een verborgen kolom, genaamd _search_frame_. Deze kolom mag voor gelijkheid worden vergeleken met een begrenzingsvak. Voorbeeld:

FROM vtab
WHERE _search_frame_=BuildMbr(-2.10,49.38,-1.3,49.99,4326)

Ruimtelijke binaire predicaten zoals ST_Intersects werken significanter sneller indien zij gebruikt worden in samenwerking met deze syntaxis voor ruimtelijke index.