diff --git a/mbtiles.cpp b/mbtiles.cpp index 5b32b94..7de5ce6 100644 --- a/mbtiles.cpp +++ b/mbtiles.cpp @@ -156,8 +156,8 @@ void tilestats(std::map const &layermap1, size_t el state.json_write_string(geomtype); size_t attrib_count = layer.second.file_keys.size(); - if (attrib_count > max_tilestats_sample_values) { - attrib_count = max_tilestats_sample_values; + if (attrib_count > max_tilestats_attributes) { + attrib_count = max_tilestats_attributes; } state.nospace = true; diff --git a/tests/ne_110m_populated_places/out/-z0_--tile-stats-attributes-limit_5_--tile-stats-sample-values-limit_200_--tile-stats-values-limit_20.json b/tests/ne_110m_populated_places/out/-z0_--tile-stats-attributes-limit_5_--tile-stats-sample-values-limit_200_--tile-stats-values-limit_20.json index 3125c82..edbfd8c 100644 --- a/tests/ne_110m_populated_places/out/-z0_--tile-stats-attributes-limit_5_--tile-stats-sample-values-limit_200_--tile-stats-values-limit_20.json +++ b/tests/ne_110m_populated_places/out/-z0_--tile-stats-attributes-limit_5_--tile-stats-sample-values-limit_200_--tile-stats-values-limit_20.json @@ -3,7 +3,7 @@ "center": "0.000000,0.000000,0", "description": "tests/ne_110m_populated_places/out/-z0_--tile-stats-attributes-limit_5_--tile-stats-sample-values-limit_200_--tile-stats-values-limit_20.json.check.mbtiles", "format": "pbf", -"json": "{\"vector_layers\": [ { \"id\": \"in\", \"description\": \"\", \"minzoom\": 0, \"maxzoom\": 0, \"fields\": {\"ADM0CAP\": \"Number\", \"ADM0NAME\": \"String\", \"ADM0_A3\": \"String\", \"ADM1NAME\": \"String\", \"ADMIN1_COD\": \"Number\", \"CAPALT\": \"Number\", \"CAPIN\": \"String\", \"CHANGED\": \"Number\", \"CHECKME\": \"Number\", \"CITYALT\": \"String\", \"COMPARE\": \"Number\", \"DIFFASCII\": \"Number\", \"DIFFNOTE\": \"String\", \"ELEVATION\": \"Number\", \"FEATURECLA\": \"String\", \"FEATURE_CL\": \"String\", \"FEATURE_CO\": \"String\", \"GEONAMEID\": \"Number\", \"GEONAMESNO\": \"String\", \"GN_ASCII\": \"String\", \"GN_POP\": \"Number\", \"GTOPO30\": \"Number\", \"ISO_A2\": \"String\", \"LABELRANK\": \"Number\", \"LATITUDE\": \"Number\", \"LONGITUDE\": \"Number\", \"LS_MATCH\": \"Number\", \"LS_NAME\": \"String\", \"MAX_AREAKM\": \"Number\", \"MAX_AREAMI\": \"Number\", \"MAX_BBXMAX\": \"Number\", \"MAX_BBXMIN\": \"Number\", \"MAX_BBYMAX\": \"Number\", \"MAX_BBYMIN\": \"Number\", \"MAX_NATSCA\": \"Number\", \"MAX_PERKM\": \"Number\", \"MAX_PERMI\": \"Number\", \"MAX_POP10\": \"Number\", \"MAX_POP20\": \"Number\", \"MAX_POP300\": \"Number\", \"MAX_POP310\": \"Number\", \"MAX_POP50\": \"Number\", \"MEAN_BBXC\": \"Number\", \"MEAN_BBYC\": \"Number\", \"MEGACITY\": \"Number\", \"MEGANAME\": \"String\", \"MIN_AREAKM\": \"Number\", \"MIN_AREAMI\": \"Number\", \"MIN_BBXMAX\": \"Number\", \"MIN_BBXMIN\": \"Number\", \"MIN_BBYMAX\": \"Number\", \"MIN_BBYMIN\": \"Number\", \"MIN_PERKM\": \"Number\", \"MIN_PERMI\": \"Number\", \"NAME\": \"String\", \"NAMEALT\": \"String\", \"NAMEASCII\": \"String\", \"NAMEDIFF\": \"Number\", \"NAMEPAR\": \"String\", \"NATSCALE\": \"Number\", \"POP1950\": \"Number\", \"POP1955\": \"Number\", \"POP1960\": \"Number\", \"POP1965\": \"Number\", \"POP1970\": \"Number\", \"POP1975\": \"Number\", \"POP1980\": \"Number\", \"POP1985\": \"Number\", \"POP1990\": \"Number\", \"POP1995\": \"Number\", \"POP2000\": \"Number\", \"POP2005\": \"Number\", \"POP2010\": \"Number\", \"POP2015\": \"Number\", \"POP2020\": \"Number\", \"POP2025\": \"Number\", \"POP2050\": \"Number\", \"POP_MAX\": \"Number\", \"POP_MIN\": \"Number\", \"POP_OTHER\": \"Number\", \"RANK_MAX\": \"Number\", \"RANK_MIN\": \"Number\", \"SCALERANK\": \"Number\", \"SOV0NAME\": \"String\", \"SOV_A3\": \"String\", \"TIMEZONE\": \"String\", \"UN_ADM0\": \"String\", \"UN_FID\": \"Number\", \"UN_LAT\": \"Number\", \"UN_LONG\": \"Number\", \"WORLDCITY\": \"Number\"} } ],\"tilestats\": {\"layerCount\": 1,\"layers\": [{\"layer\": \"in\",\"count\": 243,\"geometry\": \"Point\",\"attributeCount\": 91,\"attributes\": [{\"attribute\": \"ADM0CAP\",\"count\": 2,\"type\": \"number\",\"values\": [0,1],\"min\": 0,\"max\": 1},{\"attribute\": \"ADM0NAME\",\"count\": 198,\"type\": \"string\",\"values\": [\"Afghanistan\",\"Albania\",\"Algeria\",\"Andorra\",\"Angola\",\"Antigua and Barbuda\",\"Argentina\",\"Armenia\",\"Australia\",\"Austria\",\"Azerbaijan\",\"Bahrain\",\"Bangladesh\",\"Barbados\",\"Belarus\",\"Belgium\",\"Belize\",\"Benin\",\"Bhutan\",\"Bolivia\"]},{\"attribute\": \"ADM0_A3\",\"count\": 198,\"type\": \"string\",\"values\": [\"AFG\",\"AGO\",\"ALB\",\"AND\",\"ARE\",\"ARG\",\"ARM\",\"ATG\",\"AUS\",\"AUT\",\"AZE\",\"BDI\",\"BEL\",\"BEN\",\"BFA\",\"BGD\",\"BGR\",\"BHR\",\"BHS\",\"BIH\"]},{\"attribute\": \"ADM1NAME\",\"count\": 200,\"type\": \"string\",\"values\": [\"Abu Dhabi\",\"Ad Dawhah\",\"Addis Ababa\",\"Ahal\",\"Al Kuwayt\",\"Al Qahirah\",\"Alger\",\"Amanat Al Asimah\",\"Amman\",\"Ankara\",\"Anseba\",\"Antananarivo\",\"Aqmola\",\"Ar Riyad\",\"AsunciĆ³n\",\"Attiki\",\"Auckland\",\"Australian Capital Territory\",\"Baghdad\",\"Baki\"]},{\"attribute\": \"ADMIN1_COD\",\"count\": 53,\"type\": \"number\",\"values\": [0,1,10,11,12,13,14,15,16,17,18,19,2,20,21,22,23,24,25,26],\"min\": 0,\"max\": 82},{\"attribute\": \"CAPALT\",\"count\": 2,\"type\": \"number\",\"values\": [0,1],\"min\": 0,\"max\": 1},{\"attribute\": \"CAPIN\",\"count\": 20,\"type\": \"string\",\"values\": [\"Administrative\",\"Capital of both\",\"Claimed as capi\",\"Claimed as inte\",\"De facto capita\",\"De facto, admin\",\"Former capital\",\"Judicial capita\",\"Legislative and\",\"Legislative cap\",\"Offical capital\",\"Official (const\",\"Official and ad\",\"Official and le\",\"Official capita\",\"Official, admin\",\"Official, de fa\",\"Official, legis\",\"UN Headquarters\",\"While Jerulsale\"]},{\"attribute\": \"CHANGED\",\"count\": 7,\"type\": \"number\",\"values\": [0,1,20,3,4,40,5],\"min\": 0,\"max\": 40},{\"attribute\": \"CHECKME\",\"count\": 2,\"type\": \"number\",\"values\": [0,5],\"min\": 0,\"max\": 5},{\"attribute\": \"CITYALT\",\"count\": 53,\"type\": \"string\",\"values\": [\"Algiers\",\"Asuncion\",\"Athens\",\"Bangkok\",\"Beirut\",\"Belgrade\",\"Bogota\",\"Bombay\",\"Brasilia\",\"Brussels\",\"Bucharest\",\"Cairo\",\"Calcutta\",\"Casablanca\",\"Copenhagen\",\"Damascus\",\"Denver\",\"Dubai\",\"Guatemala\",\"Hanoi\"]},{\"attribute\": \"COMPARE\",\"count\": 2,\"type\": \"number\",\"values\": [0,1],\"min\": 0,\"max\": 1},{\"attribute\": \"DIFFASCII\",\"count\": 2,\"type\": \"number\",\"values\": [0,1],\"min\": 0,\"max\": 1},{\"attribute\": \"DIFFNOTE\",\"count\": 12,\"type\": \"string\",\"values\": [\"Added place.\",\"Changed country.\",\"Changed feature class.\",\"Changed feature class. Changed scale rank.\",\"Changed feature to Admin-0 region capital.\",\"Changed scale rank.\",\"Corrected coordinates.\",\"Location adjusted.\",\"Location adjusted. Changed scale rank.\",\"Name changed.\",\"Name changed. Changed scale rank.\",\"Population from GeoNames. Changed scale rank.\"]},{\"attribute\": \"ELEVATION\",\"count\": 19,\"type\": \"number\",\"values\": [0,10,1317,16,171,179,187,2,2320,284,308,320,5,7,70,74,850,89,920],\"min\": 0,\"max\": 2320},{\"attribute\": \"FEATURECLA\",\"count\": 6,\"type\": \"string\",\"values\": [\"Admin-0 capital\",\"Admin-0 capital alt\",\"Admin-0 region capital\",\"Admin-1 capital\",\"Admin-1 region capital\",\"Populated place\"]},{\"attribute\": \"FEATURE_CL\",\"count\": 1,\"type\": \"string\",\"values\": [\"P\"]},{\"attribute\": \"FEATURE_CO\",\"count\": 4,\"type\": \"string\",\"values\": [\"PPL\",\"PPLA\",\"PPLC\",\"PPLG\"]},{\"attribute\": \"GEONAMEID\",\"count\": 200,\"type\": \"number\",\"values\": [-1,1018725,1040652,1070940,108410,112931,1138958,1176615,1185241,1221874,1238992,1252416,1261481,1275004,1275339,1277333,1283240,1298824,146268,1512569],\"min\": -1,\"max\": 6942553},{\"attribute\": \"GEONAMESNO\",\"count\": 8,\"type\": \"string\",\"values\": [\"GeoNames match general + researched.\",\"GeoNames match general.\",\"GeoNames match with ascii name + lat + long whole numbers.\",\"GeoNames rough area, rough name, requires further research.\",\"GeoNames rough area, rough name.\",\"GeoNames spatial join with similar names only.\",\"Geonames ascii name + lat.d + long.d matching.\",\"No GeoNames match due to small population, not in GeoNames, or poor NEV placement.\"]},{\"attribute\": \"GN_ASCII\",\"count\": 200,\"type\": \"string\",\"values\": [\"Abidjan\",\"Abu Dhabi\",\"Abuja\",\"Accra\",\"Addis Ababa\",\"Algiers\",\"Amman\",\"Amsterdam\",\"Andorra\",\"Ankara\",\"Antananarivo\",\"Apia\",\"Ashgabat\",\"Asmara\",\"Astana\",\"Asuncion\",\"Athens\",\"Atlanta\",\"Auckland\",\"Baghdad\"]}]}]}}", +"json": "{\"vector_layers\": [ { \"id\": \"in\", \"description\": \"\", \"minzoom\": 0, \"maxzoom\": 0, \"fields\": {\"ADM0CAP\": \"Number\", \"ADM0NAME\": \"String\", \"ADM0_A3\": \"String\", \"ADM1NAME\": \"String\", \"ADMIN1_COD\": \"Number\", \"CAPALT\": \"Number\", \"CAPIN\": \"String\", \"CHANGED\": \"Number\", \"CHECKME\": \"Number\", \"CITYALT\": \"String\", \"COMPARE\": \"Number\", \"DIFFASCII\": \"Number\", \"DIFFNOTE\": \"String\", \"ELEVATION\": \"Number\", \"FEATURECLA\": \"String\", \"FEATURE_CL\": \"String\", \"FEATURE_CO\": \"String\", \"GEONAMEID\": \"Number\", \"GEONAMESNO\": \"String\", \"GN_ASCII\": \"String\", \"GN_POP\": \"Number\", \"GTOPO30\": \"Number\", \"ISO_A2\": \"String\", \"LABELRANK\": \"Number\", \"LATITUDE\": \"Number\", \"LONGITUDE\": \"Number\", \"LS_MATCH\": \"Number\", \"LS_NAME\": \"String\", \"MAX_AREAKM\": \"Number\", \"MAX_AREAMI\": \"Number\", \"MAX_BBXMAX\": \"Number\", \"MAX_BBXMIN\": \"Number\", \"MAX_BBYMAX\": \"Number\", \"MAX_BBYMIN\": \"Number\", \"MAX_NATSCA\": \"Number\", \"MAX_PERKM\": \"Number\", \"MAX_PERMI\": \"Number\", \"MAX_POP10\": \"Number\", \"MAX_POP20\": \"Number\", \"MAX_POP300\": \"Number\", \"MAX_POP310\": \"Number\", \"MAX_POP50\": \"Number\", \"MEAN_BBXC\": \"Number\", \"MEAN_BBYC\": \"Number\", \"MEGACITY\": \"Number\", \"MEGANAME\": \"String\", \"MIN_AREAKM\": \"Number\", \"MIN_AREAMI\": \"Number\", \"MIN_BBXMAX\": \"Number\", \"MIN_BBXMIN\": \"Number\", \"MIN_BBYMAX\": \"Number\", \"MIN_BBYMIN\": \"Number\", \"MIN_PERKM\": \"Number\", \"MIN_PERMI\": \"Number\", \"NAME\": \"String\", \"NAMEALT\": \"String\", \"NAMEASCII\": \"String\", \"NAMEDIFF\": \"Number\", \"NAMEPAR\": \"String\", \"NATSCALE\": \"Number\", \"POP1950\": \"Number\", \"POP1955\": \"Number\", \"POP1960\": \"Number\", \"POP1965\": \"Number\", \"POP1970\": \"Number\", \"POP1975\": \"Number\", \"POP1980\": \"Number\", \"POP1985\": \"Number\", \"POP1990\": \"Number\", \"POP1995\": \"Number\", \"POP2000\": \"Number\", \"POP2005\": \"Number\", \"POP2010\": \"Number\", \"POP2015\": \"Number\", \"POP2020\": \"Number\", \"POP2025\": \"Number\", \"POP2050\": \"Number\", \"POP_MAX\": \"Number\", \"POP_MIN\": \"Number\", \"POP_OTHER\": \"Number\", \"RANK_MAX\": \"Number\", \"RANK_MIN\": \"Number\", \"SCALERANK\": \"Number\", \"SOV0NAME\": \"String\", \"SOV_A3\": \"String\", \"TIMEZONE\": \"String\", \"UN_ADM0\": \"String\", \"UN_FID\": \"Number\", \"UN_LAT\": \"Number\", \"UN_LONG\": \"Number\", \"WORLDCITY\": \"Number\"} } ],\"tilestats\": {\"layerCount\": 1,\"layers\": [{\"layer\": \"in\",\"count\": 243,\"geometry\": \"Point\",\"attributeCount\": 5,\"attributes\": [{\"attribute\": \"ADM0CAP\",\"count\": 2,\"type\": \"number\",\"values\": [0,1],\"min\": 0,\"max\": 1},{\"attribute\": \"ADM0NAME\",\"count\": 198,\"type\": \"string\",\"values\": [\"Afghanistan\",\"Albania\",\"Algeria\",\"Andorra\",\"Angola\",\"Antigua and Barbuda\",\"Argentina\",\"Armenia\",\"Australia\",\"Austria\",\"Azerbaijan\",\"Bahrain\",\"Bangladesh\",\"Barbados\",\"Belarus\",\"Belgium\",\"Belize\",\"Benin\",\"Bhutan\",\"Bolivia\"]},{\"attribute\": \"ADM0_A3\",\"count\": 198,\"type\": \"string\",\"values\": [\"AFG\",\"AGO\",\"ALB\",\"AND\",\"ARE\",\"ARG\",\"ARM\",\"ATG\",\"AUS\",\"AUT\",\"AZE\",\"BDI\",\"BEL\",\"BEN\",\"BFA\",\"BGD\",\"BGR\",\"BHR\",\"BHS\",\"BIH\"]},{\"attribute\": \"ADM1NAME\",\"count\": 200,\"type\": \"string\",\"values\": [\"Abu Dhabi\",\"Ad Dawhah\",\"Addis Ababa\",\"Ahal\",\"Al Kuwayt\",\"Al Qahirah\",\"Alger\",\"Amanat Al Asimah\",\"Amman\",\"Ankara\",\"Anseba\",\"Antananarivo\",\"Aqmola\",\"Ar Riyad\",\"AsunciĆ³n\",\"Attiki\",\"Auckland\",\"Australian Capital Territory\",\"Baghdad\",\"Baki\"]},{\"attribute\": \"ADMIN1_COD\",\"count\": 53,\"type\": \"number\",\"values\": [0,1,10,11,12,13,14,15,16,17,18,19,2,20,21,22,23,24,25,26],\"min\": 0,\"max\": 82},{\"attribute\": \"CAPALT\",\"count\": 2,\"type\": \"number\",\"values\": [0,1],\"min\": 0,\"max\": 1},{\"attribute\": \"CAPIN\",\"count\": 20,\"type\": \"string\",\"values\": [\"Administrative\",\"Capital of both\",\"Claimed as capi\",\"Claimed as inte\",\"De facto capita\",\"De facto, admin\",\"Former capital\",\"Judicial capita\",\"Legislative and\",\"Legislative cap\",\"Offical capital\",\"Official (const\",\"Official and ad\",\"Official and le\",\"Official capita\",\"Official, admin\",\"Official, de fa\",\"Official, legis\",\"UN Headquarters\",\"While Jerulsale\"]},{\"attribute\": \"CHANGED\",\"count\": 7,\"type\": \"number\",\"values\": [0,1,20,3,4,40,5],\"min\": 0,\"max\": 40},{\"attribute\": \"CHECKME\",\"count\": 2,\"type\": \"number\",\"values\": [0,5],\"min\": 0,\"max\": 5},{\"attribute\": \"CITYALT\",\"count\": 53,\"type\": \"string\",\"values\": [\"Algiers\",\"Asuncion\",\"Athens\",\"Bangkok\",\"Beirut\",\"Belgrade\",\"Bogota\",\"Bombay\",\"Brasilia\",\"Brussels\",\"Bucharest\",\"Cairo\",\"Calcutta\",\"Casablanca\",\"Copenhagen\",\"Damascus\",\"Denver\",\"Dubai\",\"Guatemala\",\"Hanoi\"]},{\"attribute\": \"COMPARE\",\"count\": 2,\"type\": \"number\",\"values\": [0,1],\"min\": 0,\"max\": 1},{\"attribute\": \"DIFFASCII\",\"count\": 2,\"type\": \"number\",\"values\": [0,1],\"min\": 0,\"max\": 1},{\"attribute\": \"DIFFNOTE\",\"count\": 12,\"type\": \"string\",\"values\": [\"Added place.\",\"Changed country.\",\"Changed feature class.\",\"Changed feature class. Changed scale rank.\",\"Changed feature to Admin-0 region capital.\",\"Changed scale rank.\",\"Corrected coordinates.\",\"Location adjusted.\",\"Location adjusted. Changed scale rank.\",\"Name changed.\",\"Name changed. Changed scale rank.\",\"Population from GeoNames. Changed scale rank.\"]},{\"attribute\": \"ELEVATION\",\"count\": 19,\"type\": \"number\",\"values\": [0,10,1317,16,171,179,187,2,2320,284,308,320,5,7,70,74,850,89,920],\"min\": 0,\"max\": 2320},{\"attribute\": \"FEATURECLA\",\"count\": 6,\"type\": \"string\",\"values\": [\"Admin-0 capital\",\"Admin-0 capital alt\",\"Admin-0 region capital\",\"Admin-1 capital\",\"Admin-1 region capital\",\"Populated place\"]},{\"attribute\": \"FEATURE_CL\",\"count\": 1,\"type\": \"string\",\"values\": [\"P\"]},{\"attribute\": \"FEATURE_CO\",\"count\": 4,\"type\": \"string\",\"values\": [\"PPL\",\"PPLA\",\"PPLC\",\"PPLG\"]},{\"attribute\": \"GEONAMEID\",\"count\": 200,\"type\": \"number\",\"values\": [-1,1018725,1040652,1070940,108410,112931,1138958,1176615,1185241,1221874,1238992,1252416,1261481,1275004,1275339,1277333,1283240,1298824,146268,1512569],\"min\": -1,\"max\": 6942553},{\"attribute\": \"GEONAMESNO\",\"count\": 8,\"type\": \"string\",\"values\": [\"GeoNames match general + researched.\",\"GeoNames match general.\",\"GeoNames match with ascii name + lat + long whole numbers.\",\"GeoNames rough area, rough name, requires further research.\",\"GeoNames rough area, rough name.\",\"GeoNames spatial join with similar names only.\",\"Geonames ascii name + lat.d + long.d matching.\",\"No GeoNames match due to small population, not in GeoNames, or poor NEV placement.\"]},{\"attribute\": \"GN_ASCII\",\"count\": 200,\"type\": \"string\",\"values\": [\"Abidjan\",\"Abu Dhabi\",\"Abuja\",\"Accra\",\"Addis Ababa\",\"Algiers\",\"Amman\",\"Amsterdam\",\"Andorra\",\"Ankara\",\"Antananarivo\",\"Apia\",\"Ashgabat\",\"Asmara\",\"Astana\",\"Asuncion\",\"Athens\",\"Atlanta\",\"Auckland\",\"Baghdad\"]}]}]}}", "maxzoom": "0", "minzoom": "0", "name": "tests/ne_110m_populated_places/out/-z0_--tile-stats-attributes-limit_5_--tile-stats-sample-values-limit_200_--tile-stats-values-limit_20.json.check.mbtiles",