18.3. Een uitvoer maken

Fig. 18.58 geeft een voorbeeld weer van een afdruklay-out, inclusief alle typen lay-outitems beschreven in het vorige gedeelte.

../../../_images/print_composer_complete.png

Fig. 18.58 Afdruklay-out met toegevoegde kaartweergave, legenda, afbeelding, schaalbalk, coördinaten, tekst en HTML-frame

Vanuit het menu Lay-out of de werkbalk kunt u de afdruklay-out uitvoeren naar verschillende bestandsindelingen, en is het mogelijk om de resolutie (afdrukkwaliteit) en papiergrootte aan te passen:

  • Het pictogram filePrint Lay-out afdrukken stelt u in staat de lay-out af te drukken naar een verbonden printer of een bestand voor PostScript, afhankelijk van de geïnstalleerde stuurprogramma’s voor de printer.

  • Het pictogram saveMapAsImage Als afbeelding exporteren exporteert de afdruklay-out naar indelingen voor afbeeldingen, zoals PNG, BMP, TIF, JPG, en nog veel meer…

  • Het pictogram saveAsSVG Als SVG exporteren slaat het kaartvenster van afdruklay-out op als een SVG (Scalable Vector Graphic).

  • Het pictogram saveAsPDF Als PDF exporteren slaat de gedefinieerde afdruklay-out direct op als een bestand PDF (Portable Document Format).

18.3.1. Instellingen voor exporteren

Iedere keer wanneer u een afdruklay-out exporteert, is er een selectie van instellingen voor de export die QGIS moet controleren om de meest toepasselijke uitvoer te geven. Deze configuraties zijn:

18.3.2. Als afbeelding exporteren

Een lay-out als een afbeelding exporteren:

  1. Klik op het pictogram saveMapAsImage Als afbeelding exporteren

  2. Selecteer de indeling voor de afbeelding, de map en bestandsnaam (bijv. myill.png) om te gebruiken. Als de lay-out meer dan één pagina bevat, zal elke pagina worden geëxporteerd naar een bestand met de opgegeven bestandsnaam en daaraan toegevoegd het paginanummer (bijv. myill_2.png).

  3. In het volgende dialoogvenster (Opties voor exporteren afbeelding):

    • U kunt de Export resolutie van de afdruklay-out en de dimensies voor de geëxporteerde pagina (zoals ingesteld in het paneel Lay-out) overschrijven.

    • Renderen van de afbeelding kan ook worden verbeterd met de optie Antialiasing inschakelen.

    • Als u uw lay-out wilt exporteren als een afbeelding met geoverwijzingen (bijv. om met andere projecten te delen), selecteer dan de optie unchecked World file aanmaken, en een ESRI World File met dezelfde naam als de geëxporteerde afbeelding, maar een andere extensie (.tfw voor TIFF, .pnw voor PNG, jgw voor JPEG, …), zal bij het exporteren worden gemaakt. Deze optie kan ook standaard worden geselecteerd in het paneel Lay-out.

      Notitie

      Voor uitvoer met meerdere pagina’s zal alleen de pagina, die de verwijzingskaart bevat, een world file krijgen (er van uitgaande dat de optie World file aanmaken is geselecteerd).

    • Door het selecteren van de optie checkbox Bijsnijden naar inhoud zullen de door de afdruklay-out uitgevoerde afbeeldingen het minimale gebied bevatten dat alle items omsluit (kaart, legenda, schaalbalk, vormen, label, afbeelding…) van elke pagina van de lay-out.

      • Als de lay-out één enkele pagina omvat, dan zal de grootte van de uitvoer worden aangepast voor ALLES op de lay-out. De pagina kan dan worden verkleind of vergroot tot alle items, afhankelijk van hun positie (op, boven, onder, links of rechts van de pagina).

      • In het geval van een lay-out met meerdere pagina’s zal de grootte van elke pagina worden aangepast zodat de items in het gebied ervan (linker- en rechterkant voor alle pagina’s, plus bovenkant voor de eerste pagina en onderkant voor de laatste pagina). Elke in grootte aangepaste pagina wordt geëxporteerd als een afzonderlijk bestand.

      Het dialoogvenster Bijsnijden naar inhoud stelt u ook in staat marges rond de bijgesneden grenzen toe te voegen.

../../../_images/image_export_options.png

Fig. 18.59 Opties voor exporteren afbeeldingen, uitvoer is op grootte van de inhoud van de items gebracht

Tip

Gebruik indelingen voor afbeeldingen die transparantie ondersteunen als items zich uitstrekken tot buiten de inhoud van het papier

Items voor lay-out zouden buiten het bereik van het papier kunnen worden geplaatst. Bij het exporteren met de optie Bijsnijden naar inhoud zou de resulterende afbeelding zich daarom kunnen uitstrekken tot buiten het bereik van het papier. Omdat de achtergrond buiten het bereik van het papier transparant zal zijn, zal voor indelingen voor afbeeldingen die transparantie niet ondersteunen (bijv. BMP en JPG) de transparante achtergrond worden gerenderd als volledig zwart, wat de afbeelding “corrumpeert”. Gebruik in dergelijke gevallen transparantie-compatibele indelingen (bijv. TIFF en PNG).

Notitie

Indien ondersteund door de indeling (bijv. PNG) en de onderliggende bibliotheek van Qt, zou de geëxporteerde afbeelding metadata van het project (auteur, titel, datum, beschrijving…) kunnen bevatten.

18.3.3. Exporteren naar SVG

Een lay-out als SVG exporteren:

  1. Klik op het pictogram saveAsSVG Als SVG exporteren

  2. Vul het pad en de bestandsnaam in (gebruikt als basis voor alle bestanden in geval van een compositie met meerdere pagina’s, net als bij exporteren naar afbeelding)

  3. In het volgende dialoogvenster SVG export opties kunt u de standaard instellingen voor exporteren voor de lay-out overschrijven of nieuwe configureren:

    • unchecked Lagen als groepen SVG exporteren: geëxporteerde items worden gegroepeerd in lagen, waarvan de namen overeenkomen met de laagnamen van QGIS, wat het veel gemakkelijker maakt de inhoud van het document te begrijpen.

    • unchecked Altijd als vectoren exporteren: sommige opties voor renderen vereisen dat items worden gerasteriseerd voor beter renderen. Selecteer deze optie om de objecten te behouden als vectoren met het risico dat het uiterlijk van het uitvoerbestand niet overeen zou hoeven te komen met het voorbeeld van de afdruklay-out (voor meer details, bekijk Instellingen voor exporteren).

    • checkbox RDF-metadata exporteren van het document, zoals de titel, auteur, datum, beschrijving…

    • checkbox Geometrieën vereenvoudigen om de bestandsgrootte te verkleinen: dit vermijdt het exporteren van ALLE punten van geometrieën, wat zou kunnen resulteren in een waanzinnig complex en groot exportbestand, dat niet in andere toepassingen geladen zou kunnen worden. Geometrieën zullen worden vereenvoudigd bij het exporteren van de lay-out door punten te verwijderen die niet opmerkelijk verschillen in de resolutie voor exporteren (bijv. als de resolutie voor exporteren 300 dpi is, zullen punten die minder dan 1/600 inch apart liggen worden verwijderd).

    • Tekst exporteren instellen: beheert of tekstlabels worden geëxporteerd als echte tekstobjecten (Tekst altijd als tekstobjecten exporteren) of alleen als paden (Tekst altijd als paden exporteren). Als zij worden geëxporteerd als tekstobjecten, dan kunnen zij worden bewerkt in externe toepassingen (bijv. Inkscape) als normale tekst. MAAR het bijeffect is dat de kwaliteit van het renderen verminderd, EN er zijn problemen met renderen als er bepaalde instellingen voor de tekst, zoals buffers, van kracht zijn. Dat is de reden waarom exporteren als paden wordt aanbevolen.

    • Toepassen van de optie checkbox Bijsnijden naar inhoud

    • unchecked Uitschakelen getegelde rasterlagen export: Bij het exporteren van bestanden gebruikt QGIS een ingebouwde rendering voor tegels van rasterlagen die geheugen bespaart. Soms zorgt dit voor zichtbare “naden” in de rasters voor gemaakte bestanden. Selecteren van deze optie zal dat oplossen, ten koste van een hoger gebruik van geheugen tijdens het exporteren.

../../../_images/svg_export_options.png

Fig. 18.60 SVG export opties

Notitie

Momenteel is de uitvoer naar SVG heel basaal. Dit is geen probleem van QGIS, maar een probleem met de onderliggende bibliotheek van Qt. Hopelijk zal dit in toekomstige versies zijn opgelost.

18.3.4. Als PDF exporteren

Een lay-out als PDF exporteren:

  1. Klik op het pictogram saveAsPDF Als PDF exporteren

  2. Vul het pad en de bestandsnaam in: anders dan voor exporteren als afbeelding en SVG, worden alle pagina’s in de lay-out geëxporteerd naar één enkel PDF-bestand.

  3. In het volgende dialoogvenster Opties voor exporteren naar PDF kunt u de standaard instellingen voor exporteren voor de lay-out overschrijven of nieuwe configureren:

    • unchecked Altijd als vectoren exporteren: sommige opties voor renderen vereisen dat items worden gerasteriseerd voor beter renderen. Selecteer deze optie om de objecten te behouden als vectoren met het risico dat het uiterlijk van het uitvoerbestand niet overeen zou hoeven te komen met het voorbeeld van de afdruklay-out (voor meer details, bekijk Instellingen voor exporteren).

    • checkbox Informatie geoverwijzing toepassen: alleen beschikbaar als de verwijzingskaart, waaruit de informatie wordt opgehaald, op de eerste pagina staat.

    • checkbox RDF-metadata exporteren van het document, zoals de titel, auteur, datum, beschrijving…

    • Tekst exporteren instellen: beheert of tekstlabels worden geëxporteerd als echte tekstobjecten (Tekst altijd als tekstobjecten exporteren) of alleen als paden (Tekst altijd als paden exporteren). Als zij worden geëxporteerd als tekstobjecten, dan kunnen zij worden bewerkt in externe toepassingen (bijv. Inkscape) als normale tekst. MAAR het bijeffect is dat de kwaliteit van het renderen verminderd, EN er zijn problemen met renderen als er bepaalde instellingen voor de tekst, zoals buffers, van kracht zijn. Dat is de reden waarom exporteren als paden wordt aanbevolen.

    • Beheer de PDF Afbeeldingscompressie met:

      • Met verlies (JPEG), wat de standaardmodus voor compressie is

      • of Zonder verlies, wat in de meeste gevallen grotere bestanden maakt, maar veel meer geschikt is voor afgedrukte uitvoer of voor post-productie in externe programma’s (vereist Qt 5.13 of later).

    • unchecked Georuimtelijke PDF maken (GeoPDF): Maakt een PDF-bestand met geoverwijzingen (vereist GDAL versie 3 of later).

    • unchecked Uitschakelen getegelde rasterlagen export: Bij het exporteren van bestanden gebruikt QGIS een op tegels gebaseerd renderen van rasterlagen die geheugen bespaart. Soms zorgt dit voor zichtbare “naden” in de rasters voor gemaakte bestanden. Selecteren van die optie zal dat oplossen, ten koste van een hoger gebruik van geheugen tijdens het exporteren.

    • checkbox Geometrieën vereenvoudigen om de bestandsgrootte te verkleinen: Geometrieën zullen worden vereenvoudigd bij het exporteren van de lay-out door punten te verwijderen die niet opmerkelijk verschillen in de resolutie voor exporteren (bijv. als de resolutie voor exporteren 300 dpi is, zullen punten die minder dan 1/600 inch apart liggen worden verwijderd). Dit kan de grootte en complexiteit van het exportbestand verkleinen (hele grote bestanden zouden kunnen weigeren te laden in andere toepassingen).

../../../_images/pdf_export_options.png

Fig. 18.61 Opties voor exporteren naar PDF

Notitie

Vanaf QGIS 3.10 met GDAL 3, wordt exporteren van GeoPDF ondersteund en een aantal GeoPDF-specifieke opties zijn beschikbaar:

  • Indeling (indeling GeoPDF - er zijn enkele varianties van GeoPDF),

  • Meerdere kaartthema’s opnemen (specificeer de op te nemen kaartthema’s),

  • Informatie over vectorobject opnemen (kies de lagen en groepeer ze in logische PDF-groepen).

Notitie

Exporteren van een afdruklay-out naar indelingen die geoverwijzingen ondersteunen (bijv. PDF en TIFF) maken standaard een uitvoer met geoverwijzingen.

18.3.5. Een atlas genereren

Functies voor atlas stellen u in staat kaartboeken te maken op een geautomatiseerde manier. Atlas gebruikt de objecten van een tabel of vectorlaag (Bedekkingslaag) om een uitvoer voor elk object te maken (atlas-object) in de tabel / laag. Het meest voorkomend gebruik is om een kaartitem te zoomen naar het huidige object voor atlas. Andere gevallen voor gebruik omvatten:

  • een kaartitem dat, voor een andere laag, alleen objecten laat zien die hetzelfde attribuut delen als het object voor atlas of binnen de geometrie ervan liggen.

  • een label of item HTML waarvan de tekst wordt vervangen als over objecten wordt gegaan

  • een tabelitem dat attributen weergeeft van geassocieerde objecten ouder of kind van het huidige object voor atlas…

Voor elk object wordt de uitvoer verwerkt voor alle pagina’s en de items ervan, overeenkomstig hun instellingen voor exporteren.

Tip

Variabelen gebruiken voor meer flexibiliteit

QGIS verschaft een groot paneel met functies en variabelen, inclusief aan atlas gerelateerde, die u kunt gebruiken om de items voor lay-out te bewerken, maar ook de symbologie van de lagen, overeenkomstig de status van atlas. Combineren van deze objecten geeft u veel flexibiliteit en helpt u gemakkelijk geavanceerde kaarten te maken.

Bekijk het paneel Atlas om het maken van een atlas in te schakelen en toegang te krijgen tot parameters voor de atlas. Dit paneel bevat het volgende (zie Fig. 18.62):

../../../_images/atlas_properties.png

Fig. 18.62 Paneel Atlas

  • checkbox Genereer een atlas schakelt het maken van een atlas in of uit.

  • Configuratie

    • Een combinatievak Bedekkingslaag selectString dat u in staat stelt de tabel of vectorlaag te kiezen die de objecten bevat waar doorheen gelopen moet worden.

    • Een optionele checkbox Verborgen bedekkingslaag die, indien geselecteerd, de bedekkingslaag zal verbergen (maar niet de andere lagen) gedurende het maken.

    • Een optioneel combinatievak Paginanaam om de naam voor de objectpagina(‘s) te specificeren. U kunt een veld van de bedekkingslaag selecteren of een expressie instellen. Als deze optie leeg is, zal QGIS een intern ID gebruiken, overeenkomstig het filter en/of de op de laag toegepaste sorteervolgorde.

    • Een optioneel tekstvak checkbox Filter met dat u in staat stelt een expressie in te stellen voor het filteren van objecten van de bedekkingslaag. Als de expressie niet leeg is, zullen alleen objecten, die evalueren naar True, worden verwerkt.

    • Een optioneel checkbox Sorteren op dat u in staat stelt objecten van de bedekkingslaag (en de uitvoer) te sorteren, door een veld van de bedekkingslaag of een expressie te gebruiken. De volgorde van sorteren (ofwel oplopend of aflopend) wordt ingesteld door de knop met twee statussen Sorteerrichting, die een pijl omhoog of omlaag weergeeft.

  • Uitvoer - dit is waar de uitvoer van de atlas kan worden geconfigureerd:

    • Een tekstvak Expressie Uitvoer bestandsnaam dat wordt gebruikt om een bestandsnaam te maken voor elk object atlas. Het is gebaseerd op expressies. Is alleen van betekenis voor het renderen van meerdere bestanden.

    • Een checkbox Exporterennaar enkel bestand indien mogelijk dat u in staat stelt het maken van één enkel bestand te forceren, als dat mogelijk is met de gekozen indeling voor de uitvoer (bijvoorbeeld PDF). Als dit veld is geselecteerd, is de waarde van het veld Expressie Uitvoer bestandsnaam zonder betekenis.

    • Een keuzelijst Indeling voor exporteren afbeelding om de indeling voor de uitvoer te selecteren bij het gebruiken van de knop saveMapAsImage Atlas als afbeeldingen exporteren….

18.3.5.1. Kaart beheren door atlas

Het meest voorkomende gebruik van atlas is met het kaartitem, zoomend naar het huidige object van atlas, omdat het doorlopen over de bedekkingslaag gaat. Dit gedrag wordt ingesteld in de groep eigenschappen van het kaartitem Beheerd door atlas. Bekijk Beheerd door atlas voor verschillende instellingen die u op het kaartitem kunt toepassen.

18.3.5.2. Labels aanpassen met een expressie

Aanpassen van labels naar het object waar de atlas overheen loopt, is mogelijk door expressies op te nemen. Zorg er voor dat u het gedeelte van de expressie (inclusief functies, velden of variabelen) plaatst tussen [% en %] (bekijk Het item Label voor meer details).

Bijvoorbeeld voor een stadslaag met velden CITY_NAME en ZIPCODE, zou u dit kunnen invoegen:

The area of [% concat( upper(CITY_NAME), ',', ZIPCODE, ' is ',
format_number($area/1000000, 2) ) %] km2

of, een andere combinatie:

The area of [% upper(CITY_NAME)%],[%ZIPCODE%] is
[%format_number($area/1000000,2) %] km2

De informatie [% concat( upper(CITY_NAME), ',', ZIPCODE, ' is ',  format_number($area/1000000, 2) ) %] is een expressie die in het label wordt gebruikt. Beide expressies zouden resulteren in het volgende type label in de gemaakte atlas:

The area of PARIS,75001 is 1.94 km2

18.3.5.3. Knoppen Data-bepaalde ‘override’ verkennen met atlas

Er zijn verscheidene plaatsen waar u een knop dataDefined Data-bepaalde ‘override’ kunt gebruiken om de geselecteerde instelling te overschrijven. Dit is in het bijzonder nuttig bij het maken van atlas. Bekijk Data-bepaalde ‘override’ instellen voor meer details over dit widget.

Voor de volgende voorbeelden wordt de laag Regions van de voorbeeld gegevensset van QGIS gebruikt en geselecteerd als Bedekkingslaag voor het maken van een atlas. We gaan er van uit dat het een lay-out met één enkele pagina is, die een kaartitem en een item Label bevat.

Als de hoogte (noord-zuid) van het bereik van een region groter is dan zijn breedte (oost-west), zou u de richting Portret moeten gebruiken in plaats van Landschap om het gebruik van het papier te optimaliseren. Met een knop dataDefined Data-bepaalde ‘override’ kunt u de richting van het papier dynamisch instellen.

Klik met rechts op de pagina en selecteer Pagina-eigenschappen om het paneel te openen. We willen de oriëntatie dynamisch instellen, met behulp van een expressie die afhankelijk is van de geometrie van de region, dus druk op de knop dataDefined van het veld Oriëntatie, selecteer Bewerken… om het dialoogvenster Expressie-string bouwer te openen en voer de volgende expressie in:

CASE WHEN bounds_width(@atlas_geometry) > bounds_height(@atlas_geometry)
THEN 'Landscape' ELSE 'Portrait' END

Als u nu het voorbeeld van de atlas bekijkt, oriënteert het papier zichzelf automatisch, maar plaatsing van de items zou niet ideaal kunnen zijn. Voor elke Region dient u ook de locatie van de items voor de lay-out opnieuw te positioneren. Voor het kaartitem kunt u de knop dataDefined gebruiken van zijn eigenschap Breedte, om die dynamisch in te stellen met de volgende expressie:

@layout_pagewidth - 20

Gebruik op dezelfde wijze de knop dataDefined van de eigenschap Hoogte om de volgende expressie op te geven om de grootte van het kaartitem te beperken:

@layout_pageheight - 20

Stel het Referentiepunt in op de radioknop linksboven en voer 10 in voor de posities X en Y, om er voor te zorgen dat het kaartitem blijft gecentreerd op de pagina.

Laten we een titel boven de kaart toevoegen in het midden van de pagina. Selecteer het item Label en stel de horizontale uitlijning in op radioButtonOn Centreren. Verplaats vervolgens het label naar de juiste positie, kies de middelste knop als het Referentiepunt, en geef de volgende expressie op voor het veld X:

@layout_pagewidth / 2

Voor alle andere items voor de lay-out kunt u op een soortgelijke manier de positie instellen, zodat zij correct zijn gepositioneerd voor zowel Portret als Landschap. U kunt nog meer aanpassingen uitvoeren, zoals het aanpassen van de titel met attributen van het object (zie bijvoorbeeld Labels aanpassen met een expressie), afbeeldingen wijzigen, op grootte brengen van het aantal kolommen voor de legenda overeenkomstig de oriëntatie van de pagina, …

De hier verschafte informatie is een bijgewerkte versie van het excellente blog (in het Engels en Portugees) over de opties Data-bepaalde ‘override’ Multiple_format_map_series_using_QGIS_2.6 .

Een ander voorbeeld van het gebruiken van de knoppen voor Data-bepaalde override is het gebruiken van een dynamische afbeelding. Voor de volgende voorbeelden gebruiken we een laag van Geopackage die een veld BLOB bevat, genaamd logo met het veldtype binary (zie Een nieuwe laag voor GeoPackage maken). Voor elk object is een andere afbeelding gedefinieerd, zodat de atlas daar doorheen kan gaan zoals beschreven in Voorbeeld en maken van een atlas. Alles wat u hoeft te doen is een afbeelding toe te voegen in de afdruklay-out en naar de Item-eigenschappen daarvan te gaan in de context van de atlas. Daar vindt u een knop Data-bepaalde override in het gedeelte Bron afbeelding van de Algemene instellingen.

../../../_images/picture_image_source.png

Kies, in het volgende venster, Bewerken zodat de Expressie string-bouwer opent. In het gedeelte Velden en waarden vindt u het veld BLOB dat werd gedefinieerd in de laag van Geopackage. Dubbelklik op de veldnaam logo en klik op OK.

../../../_images/expression_blob_picture_atlas.png

De atlas gaat door de items in het veld BLOB, vooropgesteld dat u de laag van Geopackage koos als Bedekkingslaag (meer instructies zijn te vinden in Voorbeeld en maken van een atlas).

Dit zijn slechts twee voorbeelden van hoe u enkele gevorderde instellingen kunt gebruiken met atlas.

18.3.5.4. Voorbeeld en maken van een atlas

../../../_images/atlas_preview.png

Fig. 18.63 Werkbalk Voorbeeld atlas

Als de instellingen voor de atlas eenmaal zijn geconfigureerd, en items voor de lay-out (kaart, tabel, afbeelding…) er aan zijn gekoppeld, kunt u een voorbeeld van alle pagina’s maken door te kiezen Atlas ► Voorbeeld Atlas of door te klikken op het pictogram atlas Voorbeeld Atlas. U kunt dan de pijlen gebruiken om door alle objecten te navigeren:

  • atlasFirst Eerste object

  • atlasPrev Vorige object

  • atlasNext Volgende object

  • atlasLast Laatste object

U kunt ook het combinatievak gebruiken om een specifiek object te selecteren en te bekijken. Het combinatievak geeft namen voor de objecten van atlas weer, overeenkomstig de ingestelde expressie in de optie voor atlas Paginanaam.

Net als eenvoudige composities, kan een atlas worden gemaakt op verschillende manieren (zie Een uitvoer maken voor meer informatie - door eenvoudigweg gereedschappen te gebruiken uit het menu Atlas of werkbalk, in plaats van het menu Lay-out.

Dit betekent dat u uw lay-outs direct kunt afdrukken met Atlas ► Afdrukken Atlas. U kunt ook een PDF maken met Atlas ► Atlas als PDF exporteren: U zult worden gevraagd naar een map om alle gegenereerde PDF-bestanden op te slaan (behalve als checkbox Exporteren naar enkel bestand indien mogelijk is geselecteerd). In dat geval zal u worden gevraagd een bestandsnaam in te voeren.

Met de gereedschappen Atlas ► Atlas als afbeeldingen exporteren… of Atlas ► Atlas als SVG exporteren…, zult u ook worden gevraagd een map te selecteren. Elke pagina van elk object van de compositie van atlas wordt geëxporteerd naar de indeling voor het afbeeldingsbestand zoals ingesteld in het paneel Atlas of naar SVG.

Notitie

Met een uitvoer met meerdere pagina’s gedraagt een atlas zich als een lay-out, met dien verstande dat alleen de pagina die de Algemene instellingen bevat, een world file zal krijgen (voor elk uitgevoerd object).

Tip

Een specifiek object van atlas afdrukken

Als u slechts één object van de lay-out van de atlas wilt afdrukken of exporteren, start dan het voorbeeld, selecteer het gewenste object in de keuzelijst en klik op Lay-out ► Afdrukken (of Exporteren… naar enige ondersteunde bestandsindeling).

18.3.5.5. Projectgedefinieerde relaties gebruiken voor maken van Atlas

Voor gebruikers met kennis van HTML en Javascript is het mogelijk te werken op objecten van GeoJSON en projectgedefinieerde relaties uit het project van QGIS te gebruiken. Het verschil tussen deze benadering, en het gebruiken van direct in HTML ingevoerde expressies is, dat het u een volledig ongestructureerd object GeoJSON geeft om mee te werken. Dit betekent dat u bestaande bibliotheken en functies voor Javascript kunt gebruiken die werken op weergaven van objecten voor GeoJSON.

De volgende code bevat alle gerelateerde kindobjecten uit de gedefinieerde relatie. Met de functie van JavaScript setFeature stelt het u in staat flexibele HTML te maken die relaties weergeeft in elke indeling die u wilt (lijsten, tabellen, etc). In het codevoorbeeld maken we een dynamische lijst met opsommingen van de gerelateerde kindobjecten.

// Declare the two HTML div elements we will use for the parent feature id
// and information about the children
<div id="parent"></div>
<div id="my_children"></div>

<script type="text/javascript">
   function setFeature(feature)
   {
     // Show the parent feature's identifier (using its "ID" field)
     document.getElementById('parent').innerHTML = feature.properties.ID;
     //clear the existing relation contents
     document.getElementById('my_children').innerHTML = '';
     feature.properties.my_relation.forEach(function(child_feature) {
     // for each related child feature, create a list element
     // with the feature's name (using its "NAME" field)
       var node = document.createElement("li");
       node.appendChild(document.createTextNode(child_feature.NAME));
       document.getElementById('my_children').appendChild(node);
     });
   }
</script>

Gedurende het maken van de atlas wordt er een doorloop uitgevoerd over de bedekkingslaag die de ouder-objecten bevat. Op elke pagina zult u een lijst met opsommingstekens zien van de gerelateerde kind-objecten die de identificatie van de ouder volgen.