MAASTOTIETOKANTA (GeoPackage) Aineiston tuottaja: Maanmittauslaitos Ajankohta: 2020, tarkemmin katso tiedoston nimestä Lisenssi: CC-4.0-BY, https://www.maanmittauslaitos.fi/avoindata-lisenssi-cc40 Maastotietokanta tuotekuvaus ja mm. kohdeluokkien selitykset: https://www.maanmittauslaitos.fi/kartat-ja-paikkatieto/asiantuntevalle-kayttajalle/tuotekuvaukset/maastotietokanta-0 Formaatti: GeoPackage http://www.geopackage.org/ Data #### Tässä maastotietokannan versiossa dataa ei ole jaettu karttalehdittäin, vain koko Suomen saman kohdeluokan datat ovat yhdessä tiedostossa. Vektoridataa sisältävät GeoPackaget (gpkg) on generoitu ajastettuna prosessina MML:n visualisointitietokannasta (Postgresql/PostGIS) GDAL työkaluilla. Visualisointikannassa oleva aineisto sisältää kartanpiirtoteknisistä syistä pistetihennyksiä. Tihennyspisteet on tunnistettavissa Z-koordinaatin arvosta -999.999. Kohdeluokkien jako tiedostoihin ###################################### Aineistot on jaoteltu seuraaviksi osakokonaisuuksiksi: MTK-maastokuvionreuna ********************* 1: maasto2kuvionreuna (3D Line String), kohdeluokat: 30211, 30212, 30999 2: maastokuvionreuna (3D Line String), kohdeluokat: 30100, 30211, 30212, 30900, 30999 MTK-suo ******* 1: soistuma (3D Polygon), kohdeluokat: 35300 2: suo (3D Polygon), kohdeluokat: 35411, 35412, 35421, 35422 MTK-virtavesi ************* 1: virtavesialue (3D Polygon), kohdeluokat: 36313 2: virtavesikapea (3D Line String), kohdeluokat: 36311, 36312 MTK-kallio ********** 1: kallioalue (3D Polygon), kohdeluokat: 34100 MTK-vakavesi ************ 1: jarvi (3D Polygon), kohdeluokat: 36200 2: meri (3D Polygon), kohdeluokat: 36211 MTK-tie ******* 1: tienroteksti (3D Point), kohdeluokat: 12106, 12181, 12182, 12183 2: tiesymboli (3D Point), kohdeluokat: 12192, 12193, 12200 3: tieviiva (3D Line String), kohdeluokat: 12111, 12112, 12121, 12122, 12131, 12132, 12141, 12151, 12152, 12311, 12312, 12313, 12314, 12316 MTK-rakennus ************ 1: aallonmurtaja (3D Line String), kohdeluokat: 44100 2: aita (3D Line String), kohdeluokat: 44211, 44213 3: allas (3D Polygon), kohdeluokat: 44300 4: ilmaradankannatinpylvas (3D Point), kohdeluokat: 44591 5: ilmarata (3D Line String), kohdeluokat: 44500 6: kellotapuli (3D Point), kohdeluokat: 44600 7: lahestymisvalo (3D Point), kohdeluokat: 44700 8: masto (3D Point), kohdeluokat: 44800 9: mastonkorkeus (3D Point), kohdeluokat: 44803 10: muistomerkki (3D Point), kohdeluokat: 44900 11: nakotorni (3D Point), kohdeluokat: 45000 12: pistolaituriviiva (3D Line String), kohdeluokat: 45111, 45112 13: portti (3D Point), kohdeluokat: 45200 14: rakennelma (3D Line String), kohdeluokat: 45700 15: rakennus (3D Polygon), kohdeluokat: 42210, 42211, 42212, 42220, 42221, 42222, 42230, 42231, 42232, 42240, 42241, 42242, 42250, 42251, 42252, 42260, 42261, 42262, 42270 16: rakennusreunaviiva (3D Line String) kohdeluokat: 42110, 42111, 42112, 42120, 42121, 42122, 42130, 42131, 42132, 42140, 42141, 42142, 42150, 42151, 42152, 42160, 42161, 42162, 42170, 42200, 44300 17: savupiippu (3D Point), kohdeluokat: 45300 18: savupiipunkorkeus (3D Point), kohdeluokka: 45303 19: tervahauta (3D Point), kohdeluokat: 45400 20: tulentekopaikka (3D Point), kohdeluokat: 45710 21: tuulivoimala (3D Point), kohdeluokat: 45500 22: vesitorni (3D Point), kohdeluokat: 45800 MTK-korkeussuhteet ****************** 1: korkeuskayra (3D Line String), kohdeluokat: 52100 2: korkeuskayrankorkeusarvo (3D Point), kohdeluokat: 52191 MTK-muut ******** 1: aidansymboli (3D Point), kohdeluokat: 9325 2: aluemerenulkoraja (3D Line String), kohdeluokat: 82100 3: ampumaalue (3D Line String), kohdeluokat: 62100 4: ankkuripaikka (3D Point), kohdeluokat: 16600 5: autoliikennealue (3D Polygon), kohdeluokat: 32421 6: harvalouhikko (3D Point), kohdeluokat: 34200 7: hautausmaa (3D Polygon), kohdeluokat: 32200 8: hietikko (3D Polygon), kohdeluokat: 34300 9: hylky (3D Point), kohdeluokat: 16712, 16721, 16722 10: hylynsyvyys (3D Point), kohdeluokat: 16703 11: jyrkanne (3D Line String), kohdeluokat: 34400 12: kaatopaikka (3D Polygon), kohdeluokat: 32300 13: kaislikko (3D Point), kohdeluokat: 38100 14: kalliohalkeama (3D Line String), kohdeluokat: 34500 15: kalliosymboli (3D Point), kohdeluokat: 34100 16: kansallispuisto (3D Polygon), kohdeluokat: 72202 17: karttasymboli (3D Point), kohdeluokat: 32191, 32192, 32291, 32591, 32891, 33091, 38991 18: kivi (3D Point), kohdeluokat: 34600 19: kivikko (3D Polygon), kohdeluokat: 34700 20: korkeuspiste (3D Point), kohdeluokat: 52210 21: koski (3D Line String), kohdeluokat: 38200 22: kunnanhallintokeskus (3D Point), kohdeluokat: 84302, 84303 24: lahde (3D Point), kohdeluokat: 36100 25: lentokenttaalue (3D Polygon), kohdeluokat: 32411, 32412, 32413, 32414, 32415, 32416, 32417, 32418 26: louhos (3D Polygon), kohdeluokat: 32500 27: luiska (3D Line String), kohdeluokat: 34800 28: luonnonpuisto (3D Polygon), kohdeluokat: 72201 29: luonnonsuojelualue (3D Polygon), kohdeluokat: 72200 30: maaaineksenottoalue (3D Polygon), kohdeluokat: 32111,32112, 32113 31: maatalousmaa (3D Polygon), kohdeluokat: 32611, 32612 32: maatuvavesialue (3D Polygon), kohdeluokat: 38300 33: matalikko (3D Polygon), kohdeluokat: 38700 34: merkittavaluontokohde (3D Point), kohdeluokat: 34900 35: metsamaankasvillisuus (3D Point), kohdeluokat: 32710, 32713, 32714, 32715, 32719 36: metsamaanmuokkaus (3D Point), kohdeluokat: 32721 37: metsanraja (3D Line String), kohdeluokat: 39500 38: muuavoinalue (3D Polygon), kohdeluokat: 39110, 39120, 39130 39: muuntaja (3D Point), kohdeluokat: 22100 40: muuntoasema (3D Line String), kohdeluokat: 22200 41: niitty (3D Polygon), kohdeluokat: 32800 42: osoitepiste (3D Point), kohdeluokat: 96001, 96002 43: paikannimi (3D Point), kohdeluokat: 12101, 12301, 14201, 16101, 32101, 32201, 32301, 32401, 32501, 32901, 33001, 33101, 34601, 34901, 35010, 35020, 35030, 35040, 35050, 35060, 35070, 35080, 35090, 35101, 36101, 36201, 36301, 36410, 36420, 36490, 38201, 38501, 38901, 42101, 42201, 44301, 44901, 48111, 48112, 48120, 48130, 48190, 72201, 72303, 72403, 72502, 72601, 72701, 72801, 82501, 92401 44: pato (3D Line String), kohdeluokat: 30300 45: pelastuskoodipiste (3D Point), kohdeluokka: 96010 46: puisto (3D Polygon), kohdeluokat: 32900 47: puu (3D Point), kohdeluokat: 35100 48: puurivi (3D Line String), kohdeluokat: 35200 49: rajavyohykkeentakaraja (3D Line String), kohdeluokat: 82200 50: rauhoitettukohde (3D Point), kohdeluokat: 72310, 72320, 72330, 72340 51: rautatie (3D Line String), kohdeluokat: 14111, 14112, 14121, 14131 52: rautatieliikennepaikka (3D Point), kohdeluokat: 14200 53: rautatiensymboli (3D Point), kohdeluokat: 14191, 14192 54: retkeilyalue (3D Polygon), kohdeluokat: 72800 55: sahkolinja (3D Line String), kohdeluokat: 22311, 22312 56: sahkolinjansymboli (3D Point), kohdeluokat: 22391, 22394, 22395 57: selite (3D Point), kohdeluokat: 12302, 16102, 32102, 32202, 32302, 32402, 32502, 32602, 32902, 33002, 33102, 34902, 35102, 36500, 38902, 39502, 42102, 42202, 44202, 44302, 44402, 44902, 45002, 45402, 45502, 45702, 45802, 62102, 62202, 72202, 72304, 72404, 72501, 72603, 72604, 72802, 82102, 82202, 82402, 85100, 95302 58: sisaistenaluevesienulkoraja (3D Line String), kohdeluokat: 82300 59: sulkuportti (3D Line String), kohdeluokat: 30400 60: suojaalue (3D Polygon), kohdeluokat: 62200 61: suojaalueenreunaviiva (3D Line String), kohdeluokat: 62200 62: suojametsa (3D Polygon), kohdeluokka: 72500 63: suojametsanreunaviiva (3D Line String), kohdeluokat: 72500 64: suojanne (3D Line String), kohdeluokat: 35500 65: suojelualueenreunaviiva (3D Line String), kohdeluokat: 30999, 72000, 72420, 72440, 72700, 74330 66: suurjannitelinjanpylvas (3D Point), kohdeluokat: 22392 67: taajaanrakennettualue (3D Polygon), kohdeluokat: 40200 68: taajaanrakennetunalueenreuna (3D Line String), kohdeluokat: 40100 69: taytemaa (3D Polygon), kohdeluokat: 33000 70: tulvaalue (3D Polygon), kohdeluokat: 38400 71: tunnelinaukko (3D Point), kohdeluokat: 16800 72: uittolaite (3D Point), kohdeluokat: 38800 73: uittoranni (3D Line String), kohdeluokat: 39000 74: ulkojasisasaaristonraja (3D Line String), kohdeluokat: 82400 75: urheilujavirkistysalue (3D Polygon), kohdeluokat: 33100 76: valtakunnanrajapyykki (3D Point), kohdeluokat: 82500 77: varastoalue (3D Polygon), kohdeluokat: 38900 78: vedenottamo (3D Point), kohdeluokat: 26200 79: vedenpinnankorkeusluku (3D Point), kohdeluokat: 36291 80: vesiasteikko (3D Point), kohdeluokat: 95300 81: vesikivi (3D Point), kohdeluokat: 38511, 38512, 38513 82: vesikivikko (3D Polygon), kohdeluokat: 38600 83: vesikuoppa (3D Point), kohdeluokat: 36400 84: virtausnuoli (3D Point), kohdeluokat: 36391, 36392, 36393 Työkaluja ########## Useimmat GIS-työkalut tukeevat GeoPackage-formaattia, mm. QGIS ja ArcGIS. Tiedostojen koot ovat 2-37 Gb, joten varmista että käytössäsi on riittävästi muistia tai käsittele kerralla vain osa tiedoston datasta. QGIS:ssa auttaa zoomaus pienemmälle alueelle ja mittakaavarajoitusten käyttö. Komentorivityökaluista GDAL osaa hyvin tehdä tiedostoista valintoja tai vaihtaa formaattia tai koordinaattijärjestelmää. Myös Python ja R skripteihin voi lukea ja kirjoittaa dataa GeoPackage formaatista, esimerkkejä löytyy täältä: https://github.com/csc-training/geocomputing/tree/master/R/geopackage https://github.com/csc-training/geocomputing/tree/master/python/geopackage Lisätietoja: http://www.geopackage.org/implementations.html GDAL #### GDAL: https://www.gdal.org/ GDAL-kirjaston ajuri (vektori): https://www.gdal.org/drv_geopackage.html GDAL-kirjaston ajuri (rasteri): https://www.gdal.org/drv_geopackage_raster.html Aineiston tarkastelu komentorivipohjaisesti ########################################### GDAL-kirjastoon kuuluva ogrinfo on hyvä työkalu aineistojen komentorivipohjaiseen tarkasteluun. https://www.gdal.org/ogrinfo.html Aineiston muuntaminen muihin formaatteihin onnistuu esim. ogr2ogr työkalulla. https://www.gdal.org/ogr2ogr.html Esimerkkejä: Selvitetään ogrinfo-työkalulla taulut, jotka geopackagesta MTK-rakennus löytyvät: ********************************************************************************* $ ogrinfo MTK-rakennus_19-01-23.gpkg INFO: Open of `MTK-rakennus_19-01-23.gpkg' using driver `GPKG' successful. 1: aallonmurtaja (3D Line String) 2: aita (3D Line String) 3: allas (3D Polygon) 4: ilmaradankannatinpylvas (3D Point) 5: ilmarata (3D Line String) 6: kellotapuli (3D Point) 7: lahestymisvalo (3D Point) 8: masto (3D Point) 9: mastonkorkeus (3D Point) 10: muistomerkki (3D Point) 11: nakotorni (3D Point) 12: pistolaituriviiva (3D Line String) 13: portti (3D Point) 14: rakennelma (3D Line String) 15: rakennus (3D Polygon) 16: rakennusreunaviiva (3D Line String) 17: savupiippu (3D Point) 18: savupiipunkorkeus (3D Point) 19: tervahauta (3D Point) 20: tulentekopaikka (3D Point) 21: tuulivoimala (3D Point) 22: vesitorni (3D Point) Selvitetään yleistiedot (-so, Summary Only) vesitorni taulusta: *************************************************************** $ ogrinfo -so MTK-rakennus_19-01-23.gpkg vesitorni INFO: Open of `MTK-rakennus_19-01-23.gpkg' using driver `GPKG' successful. Layer name: vesitorni Geometry: 3D Point Feature Count: 363 Extent: (107116.000000, 6638780.000000) - (700667.000000, 7480290.000000) Layer SRS WKT: PROJCS["ETRS89 / TM35FIN(E,N)", GEOGCS["ETRS89", DATUM["European_Terrestrial_Reference_System_1989", SPHEROID["GRS 1980",6378137,298.257222101, AUTHORITY["EPSG","7019"]], TOWGS84[0,0,0,0,0,0,0], AUTHORITY["EPSG","6258"]], PRIMEM["Greenwich",0, AUTHORITY["EPSG","8901"]], UNIT["degree",0.0174532925199433, AUTHORITY["EPSG","9122"]], AUTHORITY["EPSG","4258"]], PROJECTION["Transverse_Mercator"], PARAMETER["latitude_of_origin",0], PARAMETER["central_meridian",27], PARAMETER["scale_factor",0.9996], PARAMETER["false_easting",500000], PARAMETER["false_northing",0], UNIT["metre",1, AUTHORITY["EPSG","9001"]], AXIS["Easting",EAST], AXIS["Northing",NORTH], AUTHORITY["EPSG","3067"]] FID Column = fid Geometry Column = geom id: Integer (0.0) NOT NULL mtk_id: Integer (0.0) NOT NULL gid: String (0.0) NOT NULL dimension: Integer (0.0) sijaintitarkkuus: Integer (0.0) korkeustarkkuus: Integer (0.0) aineistolahde: Integer (0.0) alkupvm: Date (0.0) suunta: Integer (0.0) kohderyhma: Integer (0.0) kohdeluokka: Integer (0.0) versio: Integer (0.0) Kysytään SQL-lauseella vesitornit rakennustaulusta (rajataan kysely kahteen kohteeseen): **************************************************************************************** $ ogrinfo MTK-rakennus_19-01-23.gpkg -sql "SELECT * FROM vesitorni limit 2" INFO: Open of `MTK-rakennus_19-01-23.gpkg' using driver `GPKG' successful. Layer name: SELECT Geometry: 3D Point Feature Count: 2 Extent: (274152.335000, 6638776.395000) - (324392.736000, 6646558.804000) Layer SRS WKT: PROJCS["ETRS89 / TM35FIN(E,N)", GEOGCS["ETRS89", DATUM["European_Terrestrial_Reference_System_1989", SPHEROID["GRS 1980",6378137,298.257222101, AUTHORITY["EPSG","7019"]], TOWGS84[0,0,0,0,0,0,0], AUTHORITY["EPSG","6258"]], PRIMEM["Greenwich",0, AUTHORITY["EPSG","8901"]], UNIT["degree",0.0174532925199433, AUTHORITY["EPSG","9122"]], AUTHORITY["EPSG","4258"]], PROJECTION["Transverse_Mercator"], PARAMETER["latitude_of_origin",0], PARAMETER["central_meridian",27], PARAMETER["scale_factor",0.9996], PARAMETER["false_easting",500000], PARAMETER["false_northing",0], UNIT["metre",1, AUTHORITY["EPSG","9001"]], AXIS["Easting",EAST], AXIS["Northing",NORTH], AUTHORITY["EPSG","3067"]] FID Column = fid Geometry Column = geom id: Integer (0.0) mtk_id: Integer (0.0) gid: String (0.0) dimension: Integer (0.0) sijaintitarkkuus: Integer (0.0) korkeustarkkuus: Integer (0.0) aineistolahde: Integer (0.0) alkupvm: Date (0.0) suunta: Integer (0.0) kohderyhma: Integer (0.0) kohdeluokka: Integer (0.0) versio: Integer (0.0) OGRFeature(SELECT):1 id (Integer) = 1 mtk_id (Integer) = 192742673 gid (String) = FI.Vesitorni.192742673 dimension (Integer) = 3 sijaintitarkkuus (Integer) = 3000 korkeustarkkuus (Integer) = 201 aineistolahde (Integer) = 1 alkupvm (Date) = 2013/09/11 suunta (Integer) = 0 kohderyhma (Integer) = 47 kohdeluokka (Integer) = 45800 versio (Integer) = 0 POINT Z (324392.736 6646558.804 19.896) OGRFeature(SELECT):2 id (Integer) = 2 mtk_id (Integer) = 91440845 gid (String) = FI.Vesitorni.91440845 dimension (Integer) = 3 sijaintitarkkuus (Integer) = 3000 korkeustarkkuus (Integer) = 201 aineistolahde (Integer) = 1 alkupvm (Date) = 2013/09/02 suunta (Integer) = 0 kohderyhma (Integer) = 47 kohdeluokka (Integer) = 45800 versio (Integer) = 0 POINT Z (274152.335 6638776.395 17.141) Selvitetään MTK-rakennus geopackagesta rakennus taulun kohdeluokat ja järjestetään ne kohdeluokan (Integer) mukaan: ******************************************************************************************************************* Huom: kohdeluokkien tietosisällöstä lisätietoa löytyy: https://www.maanmittauslaitos.fi/kartat-ja-paikkatieto/asiantuntevalle-kayttajalle/tuotekuvaukset/maastotietokanta-0 $ ogrinfo MTK-rakennus_19-01-23.gpkg -sql "SELECT DISTINCT kohdeluokka FROM rakennus ORDER by kohdeluokka" INFO: Open of `MTK-rakennus_19-01-23.gpkg' using driver `GPKG' successful. Layer name: SELECT Geometry: None Feature Count: 19 Layer SRS WKT: (unknown) kohdeluokka: Integer (0.0) OGRFeature(SELECT):0 kohdeluokka (Integer) = 42210 OGRFeature(SELECT):1 kohdeluokka (Integer) = 42211 OGRFeature(SELECT):2 kohdeluokka (Integer) = 42212 OGRFeature(SELECT):3 kohdeluokka (Integer) = 42220 OGRFeature(SELECT):4 kohdeluokka (Integer) = 42221 OGRFeature(SELECT):5 kohdeluokka (Integer) = 42222 OGRFeature(SELECT):6 kohdeluokka (Integer) = 42230 OGRFeature(SELECT):7 kohdeluokka (Integer) = 42231 OGRFeature(SELECT):8 kohdeluokka (Integer) = 42232 OGRFeature(SELECT):9 kohdeluokka (Integer) = 42240 OGRFeature(SELECT):10 kohdeluokka (Integer) = 42241 OGRFeature(SELECT):11 kohdeluokka (Integer) = 42242 OGRFeature(SELECT):12 kohdeluokka (Integer) = 42250 OGRFeature(SELECT):13 kohdeluokka (Integer) = 42251 OGRFeature(SELECT):14 kohdeluokka (Integer) = 42252 OGRFeature(SELECT):15 kohdeluokka (Integer) = 42260 OGRFeature(SELECT):16 kohdeluokka (Integer) = 42261 OGRFeature(SELECT):17 kohdeluokka (Integer) = 42262 OGRFeature(SELECT):18 kohdeluokka (Integer) = 42270 Vesitornien erottaminen geopackagesta ogr2ogr työkalulla ja tallentaminen ESRI shapefile -formaattiin ***************************************************************************************************** $ ogr2ogr -f "ESRI Shapefile" vesitorni.shp MTK-rakennus_19-01-23.gpkg -sql "SELECT * FROM vesitorni" Warning 6: Normalized/laundered field name: 'sijaintitarkkuus' to 'sijaintita' Warning 6: Normalized/laundered field name: 'korkeustarkkuus' to 'korkeustar' Warning 6: Normalized/laundered field name: 'aineistolahde' to 'aineistola' Warning 6: Normalized/laundered field name: 'kohdeluokka' to 'kohdeluokk'