{"id":1884,"date":"2026-04-10T17:05:35","date_gmt":"2026-04-10T15:05:35","guid":{"rendered":"https:\/\/cad-kompass.de\/?p=1884"},"modified":"2026-06-26T17:43:24","modified_gmt":"2026-06-26T15:43:24","slug":"dgm-open-data-finder","status":"publish","type":"post","link":"https:\/\/cad-kompass.de\/?p=1884","title":{"rendered":"DGM Open Data Finder"},"content":{"rendered":"\n<!--\n    (c) CAD-Kompass. Alle Rechte vorbehalten.\n    Dieses Tool einschliesslich Quellcode, Design und Logik ist geistiges\n    Eigentum von CAD-Kompass. Jegliche Vervielfaeltigung, Weitergabe oder\n    Einbindung auf fremden Webseiten ist ohne ausdrueckliche schriftliche\n    Genehmigung untersagt.\n-->\n<style>\n    .odf-box {\n        --odf-primary: #3f5f75;\n        --odf-primary-dark: #2c4a5e;\n        --odf-primary-deep: #1e3548;\n        --odf-ink: #1e293b;\n        --odf-text: #334155;\n        --odf-muted: #64748b;\n        --odf-faint: #94a3b8;\n        --odf-border: #c8d6e0;\n        --odf-surface: #f7f9fb;\n        background: var(--odf-surface);\n        border: 3px solid var(--odf-primary);\n        border-radius: 8px;\n        margin: 28px 0;\n        overflow: hidden;\n        position: relative;\n        font-family: inherit;\n        color: var(--odf-text);\n        line-height: 1.6;\n    }\n\n    \/* Header *\/\n    .odf-header {\n        background: linear-gradient(135deg, var(--odf-primary-deep) 0%, var(--odf-primary-dark) 100%);\n        padding: 20px 28px 18px;\n        position: relative;\n        overflow: hidden;\n    }\n    .odf-header::after {\n        content: '';\n        position: absolute;\n        bottom: 0;\n        left: 0;\n        right: 0;\n        height: 3px;\n        background: repeating-linear-gradient(\n                90deg,\n                var(--odf-primary) 0px,\n                var(--odf-primary) 8px,\n                transparent 8px,\n                transparent 12px\n        );\n    }\n    .odf-header-top {\n        display: flex;\n        align-items: center;\n        gap: 12px;\n        margin-bottom: 6px;\n    }\n    .odf-header-icon {\n        width: 36px;\n        height: 36px;\n        flex-shrink: 0;\n        opacity: 0.85;\n    }\n    .odf-box .odf-box-title {\n        font-size: 1.15rem;\n        font-weight: 700;\n        color: #fff;\n        margin: 0;\n        padding: 0;\n        letter-spacing: 0.02em;\n        display: inline;\n    }\n    .odf-box .odf-box-desc {\n        font-size: 0.85rem;\n        color: rgba(255,255,255,0.65);\n        margin: 0;\n        padding: 0;\n        line-height: 1.5;\n        display: block;\n    }\n\n    \/* Body *\/\n    .odf-body {\n        padding: 22px 28px 24px;\n    }\n\n    \/* Privacy *\/\n    .odf-privacy {\n        background: #f0fdf4;\n        border: 1px solid #bbf7d0;\n        border-radius: 3px;\n        padding: 9px 14px;\n        margin-bottom: 20px;\n        font-size: 0.8rem;\n        color: #15803d;\n        line-height: 1.5;\n        display: flex;\n        align-items: center;\n        gap: 8px;\n    }\n    .odf-privacy::before {\n        content: '\\1F512';\n        flex-shrink: 0;\n        font-size: 0.9rem;\n    }\n\n    \/* Hinweis-Box *\/\n    .odf-hint {\n        background: #eff6ff;\n        border: 1px solid #bfdbfe;\n        border-radius: 3px;\n        padding: 12px 16px;\n        margin-bottom: 20px;\n        font-size: 0.84rem;\n        color: #1e40af;\n        line-height: 1.6;\n    }\n    .odf-hint a {\n        color: #1e40af;\n        font-weight: 600;\n        text-decoration: underline;\n    }\n    .odf-hint a:hover {\n        color: #1e3a8a;\n    }\n\n    \/* Controls *\/\n    .odf-controls {\n        display: flex;\n        gap: 10px;\n        margin-bottom: 14px;\n        flex-wrap: wrap;\n    }\n    .odf-controls input,\n    .odf-controls select {\n        flex: 1;\n        min-width: 200px;\n        padding: 10px 14px;\n        font-size: 0.92rem;\n        border: 1px solid var(--odf-border);\n        border-radius: 2px;\n        font-family: inherit;\n        color: var(--odf-ink);\n        background: #fff;\n        transition: border-color 0.15s, box-shadow 0.15s;\n        -webkit-appearance: none;\n    }\n    .odf-controls input:focus,\n    .odf-controls select:focus {\n        outline: none;\n        border-color: var(--odf-primary);\n        box-shadow: 0 0 0 2px rgba(63,95,117,0.12);\n    }\n    .odf-controls input::placeholder {\n        color: var(--odf-faint);\n    }\n\n    \/* Filter-Gruppen *\/\n    .odf-filter-group {\n        margin-bottom: 14px;\n    }\n    .odf-filter-label {\n        font-size: 0.78rem;\n        font-weight: 600;\n        color: var(--odf-muted);\n        text-transform: uppercase;\n        letter-spacing: 0.05em;\n        margin-bottom: 6px;\n        display: block;\n    }\n    .odf-filters {\n        display: flex;\n        flex-wrap: wrap;\n        gap: 6px;\n    }\n    .odf-filter-btn {\n        padding: 5px 12px;\n        font-size: 0.82rem;\n        font-family: inherit;\n        border: 1px solid var(--odf-border);\n        border-radius: 2px;\n        background: #fff;\n        color: var(--odf-muted);\n        cursor: pointer;\n        transition: background 0.15s, color 0.15s, border-color 0.15s;\n        line-height: 1.4;\n    }\n    .odf-filter-btn:hover {\n        background: #eef2f6;\n        border-color: var(--odf-primary);\n        color: var(--odf-ink);\n    }\n    .odf-filter-btn.odf-active {\n        background: var(--odf-primary);\n        color: #fff;\n        border-color: var(--odf-primary);\n    }\n\n    \/* Count *\/\n    .odf-count {\n        font-size: 0.84rem;\n        color: var(--odf-muted);\n        margin-bottom: 10px;\n    }\n\n    \/* Results *\/\n    .odf-results {\n        display: flex;\n        flex-direction: column;\n        gap: 8px;\n    }\n    .odf-card {\n        background: #fff;\n        border: 1px solid var(--odf-border);\n        border-left: 3px solid var(--odf-primary);\n        padding: 14px 18px;\n        border-radius: 0 2px 2px 0;\n    }\n    .odf-card-head {\n        display: flex;\n        align-items: baseline;\n        gap: 10px;\n        flex-wrap: wrap;\n        margin-bottom: 8px;\n    }\n    .odf-card-land {\n        font-size: 1rem;\n        font-weight: 700;\n        color: var(--odf-ink);\n    }\n    .odf-card-portal {\n        font-size: 0.85rem;\n        color: var(--odf-primary);\n    }\n    .odf-card-portal a {\n        color: var(--odf-primary);\n        text-decoration: underline;\n        transition: color 0.15s;\n    }\n    .odf-card-portal a:hover {\n        color: var(--odf-primary-deep);\n    }\n    .odf-card-details {\n        display: flex;\n        flex-wrap: wrap;\n        gap: 8px 20px;\n        font-size: 0.84rem;\n        color: var(--odf-text);\n        line-height: 1.7;\n    }\n    .odf-card-detail {\n        display: flex;\n        gap: 6px;\n        align-items: baseline;\n    }\n    .odf-card-detail-label {\n        font-weight: 600;\n        color: var(--odf-muted);\n        font-size: 0.78rem;\n        text-transform: uppercase;\n        letter-spacing: 0.03em;\n        white-space: nowrap;\n    }\n    .odf-badge {\n        display: inline-block;\n        font-size: 0.72rem;\n        font-weight: 600;\n        padding: 2px 8px;\n        border-radius: 2px;\n        background: #f0f5fa;\n        color: var(--odf-primary);\n        border: 1px solid var(--odf-border);\n        white-space: nowrap;\n        margin: 1px 2px;\n    }\n    .odf-card-info {\n        font-size: 0.82rem;\n        color: var(--odf-muted);\n        margin-top: 8px;\n        line-height: 1.5;\n        font-style: italic;\n    }\n    .odf-card mark {\n        background: #fef08a;\n        color: inherit;\n        padding: 0 1px;\n        border-radius: 2px;\n    }\n    .odf-empty {\n        text-align: center;\n        padding: 32px 16px;\n        color: var(--odf-muted);\n        font-size: 0.9rem;\n    }\n\n    \/* Disclaimer *\/\n    .odf-disclaimer {\n        font-size: 0.76rem;\n        color: var(--odf-faint);\n        font-style: italic;\n        margin: 20px 0 0;\n        line-height: 1.5;\n        padding-top: 14px;\n        border-top: 1px solid #eef2f6;\n    }\n\n    \/* Responsive *\/\n    @media (max-width: 900px) {\n        .odf-header { padding: 16px 20px 14px; }\n        .odf-body { padding: 18px 20px 20px; }\n        .odf-controls { flex-direction: column; gap: 10px; }\n        .odf-controls input,\n        .odf-controls select { min-width: 0; }\n        .odf-filters { gap: 5px; }\n        .odf-filter-btn { font-size: 0.78rem; padding: 4px 9px; }\n        .odf-card-details { flex-direction: column; gap: 4px; }\n    }\n<\/style>\n\n<div class=\"odf-box\">\n    <div class=\"odf-header\">\n        <div class=\"odf-header-top\">\n            <svg class=\"odf-header-icon\" viewBox=\"0 0 36 36\" fill=\"none\">\n                <path d=\"M6 28 L12 18 L18 22 L24 12 L30 16\" stroke=\"rgba(255,255,255,0.7)\" stroke-width=\"1.5\" fill=\"none\" stroke-linejoin=\"round\"\/>\n                <path d=\"M6 28 L12 18 L18 22 L24 12 L30 16 L30 28 Z\" fill=\"rgba(255,255,255,0.1)\" stroke=\"none\"\/>\n                <rect x=\"4\" y=\"6\" width=\"28\" height=\"24\" rx=\"2\" stroke=\"rgba(255,255,255,0.5)\" stroke-width=\"1.2\" fill=\"none\"\/>\n                <circle cx=\"9\" cy=\"10\" r=\"1.5\" fill=\"rgba(255,255,255,0.5)\"\/>\n            <\/svg>\n            <span class=\"odf-box-title\">DGM Open-Data-Finder<\/span>\n        <\/div>\n        <span class=\"odf-box-desc\">Finde die passende Open-Data-Quelle f&uuml;r Digitale Gel&auml;ndemodelle (DGM) in deinem Bundesland &ndash; mit Aufl&ouml;sung, Format und Lizenzangabe.<\/span>\n    <\/div>\n\n    <div class=\"odf-body\">\n        <div class=\"odf-privacy\">Dieses Tool arbeitet vollst&auml;ndig in deinem Browser. Keine Daten werden &uuml;bertragen.<\/div>\n\n        <div class=\"odf-hint\">\n            <strong>Tipp:<\/strong> Die folgenden Links f&uuml;hren direkt zu den Open-Data-Portalen der einzelnen Bundesl&auml;nder. Dort kannst du Digitale Gel&auml;ndemodelle (DGM) kostenlos herunterladen. Aufl&ouml;sungen, Formate und Downloadverfahren unterscheiden sich je nach Bundesland.\n        <\/div>\n\n        <div class=\"odf-controls\">\n            <input type=\"text\" id=\"odf-search\" placeholder=\"z.B. Bayern, GeoTIFF, DGM1, NRW ...\">\n            <select id=\"odf-dropdown\">\n                <option value=\"\">Bundesland w&auml;hlen&hellip;<\/option>\n            <\/select>\n        <\/div>\n\n        <div class=\"odf-filter-group\">\n            <span class=\"odf-filter-label\">Aufl&ouml;sung<\/span>\n            <div class=\"odf-filters\" id=\"odf-filters-res\"><\/div>\n        <\/div>\n        <div class=\"odf-filter-group\">\n            <span class=\"odf-filter-label\">Format<\/span>\n            <div class=\"odf-filters\" id=\"odf-filters-fmt\"><\/div>\n        <\/div>\n\n        <p class=\"odf-count\" id=\"odf-count\"><\/p>\n        <div class=\"odf-results\" id=\"odf-results\"><\/div>\n\n        <span class=\"odf-disclaimer\">Dieses Tool wurde mit gr&ouml;&szlig;ter Sorgfalt erstellt. Alle Angaben ohne Gew&auml;hr. Die Links und Angaben k&ouml;nnen sich jederzeit &auml;ndern &ndash; bitte pr&uuml;fe die Daten direkt beim jeweiligen Anbieter. Eine Haftung f&uuml;r die Richtigkeit wird nicht &uuml;bernommen.<\/span>\n        <span class=\"odf-disclaimer\">&copy; CAD-Kompass. Alle Rechte vorbehalten. Quellcode, Design und Logik dieses Tools sind geistiges Eigentum von CAD-Kompass. Eine Vervielf&auml;ltigung oder Einbindung auf fremden Webseiten ist ohne schriftliche Genehmigung nicht gestattet.<\/span>\n    <\/div>\n<\/div>\n\n<script>\n    (function () {\n        var data = [\n            { land:'Baden-W\\u00fcrttemberg', portal:'LGL-BW OpenGeodata', url:'https:\/\/opengeodata.lgl-bw.de\/\\x23\/(sidenav:product\/dgm1)', res:['DGM1','DGM25'], fmt:['XYZ'], epsg:'EPSG:25832', lizenz:'dl-de\/by-2.0', info:'DGM1 oder DGM25 w\\u00e4hlbar' },\n            { land:'Bayern', portal:'OpenData Bayern', url:'https:\/\/geodaten.bayern.de\/opengeodata\/OpenDataDetail.html?pn=dgm1', res:['DGM1'], fmt:['XYZ','GeoTIFF'], epsg:'EPSG:25832', lizenz:'dl-de\/by-2.0', info:'DGM1 als XYZ-Punkte und GeoTIFF' },\n            { land:'Berlin', portal:'GDI Berlin', url:'https:\/\/gdi.berlin.de\/geonetwork\/srv\/ger\/catalog.search\\x23\/metadata\/fa02f9e1-a0df-3be1-b0aa-bc624c0c7ff5', res:['DGM1'], fmt:['XYZ'], epsg:'EPSG:25833', lizenz:'dl-de\/by-2.0', info:'DGM1 w\\u00e4hlbar' },\n            { land:'Brandenburg', portal:'LGB Geobasis BB', url:'https:\/\/data.geobasis-bb.de\/geobasis\/daten\/dgm\/xyz\/', res:['DGM1'], fmt:['XYZ'], epsg:'EPSG:25833', lizenz:'dl-de\/by-2.0', info:'Gebietsauswahl \\u00fcber Blattschnitte. Direkter Download \\u00fcber den Downloadbereich.' },\n            { land:'Bremen', portal:'Landesamt Geoinformation Bremen', url:'https:\/\/www.geo.bremen.de\/produkte\/3d-produkte\/hoehenmodelle-12482', res:['DGM1'], fmt:['XYZ'], epsg:'EPSG:25832', lizenz:'dl-de\/by-2.0', info:'Bremen und Bremerhaven k\\u00f6nnen getrennt bezogen werden.' },\n            { land:'Hamburg', portal:'Transparenzportal Hamburg', url:'https:\/\/suche.transparenz.hamburg.de\/dataset\/digitales-hohenmodell-hamburg-dgm-1', res:['DGM1'], fmt:['XYZ'], epsg:'EPSG:25832', lizenz:'dl-de\/by-2.0', info:'Es sind auch \\u00e4ltere Jahrg\\u00e4nge verf\\u00fcgbar.' },\n            { land:'Hessen', portal:'GDS Hessen', url:'https:\/\/gds.hessen.de\/INTERSHOP\/web\/WFS\/HLBG-Geodaten-Site\/de_DE\/-\/EUR\/ViewDownloadcenter-Start?path=3D-Daten\/Digitales%20Gel%C3%A4ndemodell%20(DGM1)', res:['DGM1'], fmt:['XYZ'], epsg:'EPSG:25832', lizenz:'dl-de\/by-2.0', info:'Unterteilt in 26 Bereiche nach Landkreisen (21) und kreisfreien St\\u00e4dten (5).' },\n            { land:'Mecklenburg-Vorpommern', portal:'Geodaten MV', url:'https:\/\/laiv.geodaten-mv.de\/afgvk\/Geotopographie\/Beschreibung?produkt=DGM', res:['DGM1','DGM5','DGM25'], fmt:['XYZ'], epsg:'EPSG:25833', lizenz:'dl-de\/by-2.0', info:'Kacheln w\\u00e4hlbar (Karte vergr\\u00f6\\u00dfern, bis Kacheln sichtbar werden).' },\n            { land:'Niedersachsen', portal:'LGLN OpenGeodata', url:'https:\/\/ni-lgln-opengeodata.hub.arcgis.com\/apps\/lgln-opengeodata::digitales-gel%C3%A4ndemodell-dgm1\/explore', res:['DGM1'], fmt:['XYZ'], epsg:'EPSG:25832', lizenz:'dl-de\/by-2.0', info:'DGM1 w\\u00e4hlbar' },\n            { land:'Nordrhein-Westfalen', portal:'Geoportal NRW', url:'https:\/\/www.geoportal.nrw\/?activetab=map&openDownloadclient=true', res:['DGM1'], fmt:['XYZ'], epsg:'EPSG:25832', lizenz:'dl-de\/zero-2.0', info:'DGM1 w\\u00e4hlbar' },\n            { land:'Rheinland-Pfalz', portal:'GeoShop RLP', url:'https:\/\/geoshop.rlp.de\/digitale_gelaendemodelle\/digitale_gelaendemodelle_dgm.html', res:['DGM1','DGM5','DGM25','DGM50'], fmt:['XYZ'], epsg:'EPSG:25832', lizenz:'dl-de\/by-2.0', info:'DGM1, DGM5, DGM25 und DGM50 w\\u00e4hlbar.' },\n            { land:'Saarland', portal:'LVGL Saarland (Shop)', url:'https:\/\/www.shop.lvgl.saarland.de\/index.php?option=com_virtuemart&view=category&virtuemart_category_id=1060&Itemid=157', res:['DGM1'], fmt:['XYZ'], epsg:'EPSG:25832', lizenz:'dl-de\/by-2.0', info:'DGM1 w\\u00e4hlbar, getrennt pro Landkreis. Kostenloser Download \\u00fcber den Open-Data-Bereich im Shop.' },\n            { land:'Sachsen', portal:'GeoSN Sachsen', url:'https:\/\/www.geodaten.sachsen.de\/downloadbereich-digitale-hoehenmodelle-4851.html', res:['DGM1'], fmt:['XYZ'], epsg:'EPSG:25833', lizenz:'dl-de\/by-2.0', info:'DGM1 und Laserscandaten w\\u00e4hlbar.' },\n            { land:'Sachsen-Anhalt', portal:'LVermGeo Sachsen-Anhalt', url:'https:\/\/www.lvermgeo.sachsen-anhalt.de\/de\/gdp-dgm1.html', res:['DGM1'], fmt:['GeoTIFF'], epsg:'EPSG:25832', lizenz:'dl-de\/by-2.0', info:'DGM1 als GeoTIFF' },\n            { land:'Schleswig-Holstein', portal:'OpenData SH', url:'https:\/\/geodaten.schleswig-holstein.de\/gaialight-sh\/_apps\/dladownload\/dl-dgm1.html', res:['DGM1'], fmt:['XYZ'], epsg:'EPSG:25832', lizenz:'dl-de\/by-2.0', info:'DGM1 als XYZ-Punkte' },\n            { land:'Th\\u00fcringen', portal:'Geoportal Th\\u00fcringen', url:'https:\/\/geoportal.thueringen.de\/gdi-th\/download-offene-geodaten\/download-hoehendaten', res:['DGM1'], fmt:['XYZ'], epsg:'EPSG:25832', lizenz:'dl-de\/by-2.0', info:'DGM1 als XYZ-Punkte' }\n        ];\n\n        \/* Sortierung alphabetisch *\/\n        data.sort(function (a, b) { return a.land.localeCompare(b.land, 'de'); });\n\n        \/* Elemente *\/\n        var elSearch = document.getElementById('odf-search');\n        var elDropdown = document.getElementById('odf-dropdown');\n        var elFiltersRes = document.getElementById('odf-filters-res');\n        var elFiltersFmt = document.getElementById('odf-filters-fmt');\n        var elCount = document.getElementById('odf-count');\n        var elResults = document.getElementById('odf-results');\n\n        \/* Dropdown befuellen *\/\n        data.forEach(function (d) {\n            var opt = document.createElement('option');\n            opt.value = d.land;\n            opt.textContent = d.land;\n            elDropdown.appendChild(opt);\n        });\n\n        \/* Filter-Buttons erzeugen *\/\n        var allRes = [];\n        var allFmt = [];\n        data.forEach(function (d) {\n            d.res.forEach(function (r) { if (allRes.indexOf(r) === -1) allRes.push(r); });\n            d.fmt.forEach(function (f) { if (allFmt.indexOf(f) === -1) allFmt.push(f); });\n        });\n        allRes.sort(function (a, b) {\n            var na = parseInt(a.replace('DGM', ''), 10);\n            var nb = parseInt(b.replace('DGM', ''), 10);\n            return na - nb;\n        });\n        allFmt.sort();\n\n        var activeRes = '';\n        var activeFmt = '';\n\n        function buildFilterBtns(container, items, type) {\n            var btnAll = document.createElement('button');\n            btnAll.className = 'odf-filter-btn odf-active';\n            btnAll.textContent = 'Alle';\n            btnAll.setAttribute('data-val', '');\n            btnAll.setAttribute('data-type', type);\n            container.appendChild(btnAll);\n            items.forEach(function (item) {\n                var btn = document.createElement('button');\n                btn.className = 'odf-filter-btn';\n                btn.textContent = item;\n                btn.setAttribute('data-val', item);\n                btn.setAttribute('data-type', type);\n                container.appendChild(btn);\n            });\n        }\n        buildFilterBtns(elFiltersRes, allRes, 'res');\n        buildFilterBtns(elFiltersFmt, allFmt, 'fmt');\n\n        function setFilter(container, val, type) {\n            var btns = container.querySelectorAll('.odf-filter-btn');\n            for (var i = 0; i < btns.length; i++) {\n                var b = btns[i];\n                if (b.getAttribute('data-val') === val) {\n                    b.classList.add('odf-active');\n                } else {\n                    b.classList.remove('odf-active');\n                }\n            }\n            if (type === 'res') activeRes = val;\n            if (type === 'fmt') activeFmt = val;\n            render();\n        }\n\n        elFiltersRes.addEventListener('click', function (e) {\n            var btn = e.target.closest('.odf-filter-btn');\n            if (!btn) return;\n            setFilter(elFiltersRes, btn.getAttribute('data-val'), 'res');\n        });\n        elFiltersFmt.addEventListener('click', function (e) {\n            var btn = e.target.closest('.odf-filter-btn');\n            if (!btn) return;\n            setFilter(elFiltersFmt, btn.getAttribute('data-val'), 'fmt');\n        });\n\n        \/* Suche *\/\n        elSearch.addEventListener('input', function () {\n            elDropdown.value = '';\n            render();\n        });\n        elDropdown.addEventListener('change', function () {\n            elSearch.value = '';\n            render();\n        });\n\n        \/* Hilfsfunktion: Text hervorheben *\/\n        function highlight(text, terms) {\n            if (!terms.length) return text;\n            var escaped = terms.map(function (t) { return t.replace(\/[.*+?^${}()|[\\]\\\\]\/g, '\\\\$&#038;'); });\n            var re = new RegExp('(' + escaped.join('|') + ')', 'gi');\n            return text.replace(re, '<mark>$1<\/mark>');\n        }\n\n        \/* Suchbarer Text pro Eintrag *\/\n        function searchable(d) {\n            return [d.land, d.portal, d.res.join(' '), d.fmt.join(' '), d.epsg, d.lizenz, d.info || ''].join(' ').toLowerCase();\n        }\n\n        \/* Rendern *\/\n        function render() {\n            var query = elSearch.value.trim().toLowerCase();\n            var dropdown = elDropdown.value;\n            var terms = query ? query.split(\/\\s+\/) : [];\n\n            var filtered = data.filter(function (d) {\n                \/* Dropdown-Filter *\/\n                if (dropdown && d.land !== dropdown) return false;\n\n                \/* Textsuche: AND-Verknuepfung *\/\n                if (terms.length) {\n                    var s = searchable(d);\n                    for (var i = 0; i < terms.length; i++) {\n                        if (s.indexOf(terms[i]) === -1) return false;\n                    }\n                }\n\n                \/* Aufloesung-Filter *\/\n                if (activeRes) {\n                    var hasRes = false;\n                    for (var r = 0; r < d.res.length; r++) {\n                        if (d.res[r] === activeRes) { hasRes = true; break; }\n                    }\n                    if (!hasRes) return false;\n                }\n\n                \/* Format-Filter *\/\n                if (activeFmt) {\n                    var hasFmt = false;\n                    for (var f = 0; f < d.fmt.length; f++) {\n                        if (d.fmt[f] === activeFmt) { hasFmt = true; break; }\n                    }\n                    if (!hasFmt) return false;\n                }\n\n                return true;\n            });\n\n            \/* Zaehler *\/\n            elCount.textContent = filtered.length + ' von ' + data.length + ' Bundesl\\u00e4ndern';\n\n            \/* Karten rendern *\/\n            if (filtered.length === 0) {\n                elResults.innerHTML = '<div class=\"odf-empty\">Keine Ergebnisse f\\u00fcr diese Auswahl. Versuche andere Suchbegriffe oder Filter.<\/div>';\n                return;\n            }\n\n            var html = '';\n            filtered.forEach(function (d) {\n                var landHL = highlight(d.land, terms);\n                var portalHL = highlight(d.portal, terms);\n\n                html += '<div class=\"odf-card\">';\n                html += '<div class=\"odf-card-head\">';\n                html += '<span class=\"odf-card-land\">' + landHL + '<\/span>';\n                html += '<span class=\"odf-card-portal\"><a href=\"' + d.url + '\" target=\"_blank\" rel=\"noopener\">' + portalHL + '<\/a><\/span>';\n                html += '<\/div>';\n                html += '<div class=\"odf-card-details\">';\n\n                \/* Aufloesungen *\/\n                html += '<div class=\"odf-card-detail\"><span class=\"odf-card-detail-label\">Aufl\\u00f6sung:<\/span><span>';\n                d.res.forEach(function (r) { html += '<span class=\"odf-badge\">' + highlight(r, terms) + '<\/span>'; });\n                html += '<\/span><\/div>';\n\n                \/* Formate *\/\n                html += '<div class=\"odf-card-detail\"><span class=\"odf-card-detail-label\">Format:<\/span><span>';\n                d.fmt.forEach(function (f) { html += '<span class=\"odf-badge\">' + highlight(f, terms) + '<\/span>'; });\n                html += '<\/span><\/div>';\n\n                \/* EPSG *\/\n                html += '<div class=\"odf-card-detail\"><span class=\"odf-card-detail-label\">KBS:<\/span><span>' + highlight(d.epsg, terms) + '<\/span><\/div>';\n\n                \/* Lizenz *\/\n                html += '<div class=\"odf-card-detail\"><span class=\"odf-card-detail-label\">Lizenz:<\/span><span>' + highlight(d.lizenz, terms) + '<\/span><\/div>';\n\n                html += '<\/div>';\n\n                \/* Hinweis *\/\n                if (d.info) {\n                    html += '<div class=\"odf-card-info\">' + highlight(d.info, terms) + '<\/div>';\n                }\n\n                html += '<\/div>';\n            });\n\n            elResults.innerHTML = html;\n        }\n\n        \/* Initialer Render *\/\n        render();\n    })();\n<\/script>\n\n","protected":false},"excerpt":{"rendered":"<p>DGM Open-Data-Finder Finde die passende Open-Data-Quelle f&uuml;r Digitale Gel&auml;ndemodelle (DGM) in deinem Bundesland &ndash; mit Aufl&ouml;sung, Format und Lizenzangabe. Dieses [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_uag_custom_page_level_css":"","site-sidebar-layout":"default","site-content-layout":"","ast-site-content-layout":"default","site-content-style":"default","site-sidebar-style":"default","ast-global-header-display":"","ast-banner-title-visibility":"disabled","ast-main-header-display":"","ast-hfb-above-header-display":"","ast-hfb-below-header-display":"","ast-hfb-mobile-header-display":"","site-post-title":"","ast-breadcrumbs-content":"","ast-featured-img":"","footer-sml-layout":"","ast-disable-related-posts":"","theme-transparent-header-meta":"","adv-header-id-meta":"","stick-header-meta":"","header-above-stick-meta":"","header-main-stick-meta":"","header-below-stick-meta":"","astra-migrate-meta-layouts":"default","ast-page-background-enabled":"default","ast-page-background-meta":{"desktop":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"ast-content-background-meta":{"desktop":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"footnotes":""},"categories":[36],"tags":[],"class_list":["post-1884","post","type-post","status-publish","format-standard","hentry","category-gelaendemodellierung"],"uagb_featured_image_src":{"full":false,"thumbnail":false,"medium":false,"medium_large":false,"large":false,"1536x1536":false,"2048x2048":false},"uagb_author_info":{"display_name":false,"author_link":"https:\/\/cad-kompass.de\/?author=1"},"uagb_comment_info":0,"uagb_excerpt":"DGM Open-Data-Finder Finde die passende Open-Data-Quelle f&uuml;r Digitale Gel&auml;ndemodelle (DGM) in deinem Bundesland &ndash; mit Aufl&ouml;sung, Format und Lizenzangabe. Dieses [&hellip;]","_links":{"self":[{"href":"https:\/\/cad-kompass.de\/index.php?rest_route=\/wp\/v2\/posts\/1884","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/cad-kompass.de\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/cad-kompass.de\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/cad-kompass.de\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/cad-kompass.de\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=1884"}],"version-history":[{"count":7,"href":"https:\/\/cad-kompass.de\/index.php?rest_route=\/wp\/v2\/posts\/1884\/revisions"}],"predecessor-version":[{"id":1914,"href":"https:\/\/cad-kompass.de\/index.php?rest_route=\/wp\/v2\/posts\/1884\/revisions\/1914"}],"wp:attachment":[{"href":"https:\/\/cad-kompass.de\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=1884"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/cad-kompass.de\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=1884"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/cad-kompass.de\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=1884"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}