Merge pull request #243 from mapbox/z0-extent

Fix clipping extent at z0, and area calculation in tippecanoe-decode
This commit is contained in:
Eric Fischer 2016-05-10 16:55:39 -07:00
commit cc4a2736ea
14 changed files with 903 additions and 910 deletions

View File

@ -1,3 +1,8 @@
## 1.11.5
* Let zoom level 0 have just as much extent and buffer as any other zoom
* Fix tippecanoe-decode bug that would sometimes show outer rings as inner
## 1.11.4
* Don't let polygons with nonzero area disappear during cleaning

View File

@ -33,11 +33,15 @@ struct lonlat {
int op;
double lon;
double lat;
int x;
int y;
lonlat(int nop, double nlon, double nlat) {
lonlat(int nop, double nlon, double nlat, int nx, int ny) {
this->op = nop;
this->lon = nlon;
this->lat = nlat;
this->x = nx;
this->y = ny;
}
};
@ -156,9 +160,9 @@ void handle(std::string message, int z, unsigned x, unsigned y, int describe) {
double lat, lon;
tile2latlon(wx, wy, 32, &lat, &lon);
ops.push_back(lonlat(op, lon, lat));
ops.push_back(lonlat(op, lon, lat, px, py));
} else {
ops.push_back(lonlat(op, 0, 0));
ops.push_back(lonlat(op, 0, 0, 0, 0));
}
}
@ -223,23 +227,27 @@ void handle(std::string message, int z, unsigned x, unsigned y, int describe) {
int n = rings.size() - 1;
if (n >= 0) {
rings[n].push_back(ops[i]);
if (ops[i].op == VT_CLOSEPATH) {
rings[n].push_back(rings[n][0]);
} else {
rings[n].push_back(ops[i]);
}
}
}
int outer = 0;
for (size_t i = 0; i < rings.size(); i++) {
double area = 0;
long double area = 0;
for (size_t k = 0; k < rings[i].size(); k++) {
if (rings[i][k].op != VT_CLOSEPATH) {
area += rings[i][k].lon * rings[i][(k + 1) % rings[i].size()].lat;
area -= rings[i][k].lat * rings[i][(k + 1) % rings[i].size()].lon;
area += rings[i][k].x * rings[i][(k + 1) % rings[i].size()].y;
area -= rings[i][k].y * rings[i][(k + 1) % rings[i].size()].x;
}
}
areas[i] = area;
if (areas[i] <= 0 || i == 0) {
if (areas[i] >= 0 || i == 0) {
outer++;
}
@ -254,7 +262,7 @@ void handle(std::string message, int z, unsigned x, unsigned y, int describe) {
int state = 0;
for (size_t i = 0; i < rings.size(); i++) {
if (areas[i] <= 0) {
if (areas[i] >= 0) {
if (state != 0) {
// new multipolygon
printf(" ] ], [ [ ");

View File

@ -450,10 +450,7 @@ drawvec clean_or_clip_poly(drawvec &geom, int z, int detail, int buffer, bool cl
}
if (clip) {
long long area = 0xFFFFFFFF;
if (z != 0) {
area = 1LL << (32 - z);
}
long long area = 1LL << (32 - z);
long long clip_buffer = buffer * area / 256;
ClipperLib::Path edge;
@ -770,11 +767,7 @@ drawvec simple_clip_poly(drawvec &geom, long long minx, long long miny, long lon
}
drawvec simple_clip_poly(drawvec &geom, int z, int detail, int buffer) {
long long area = 0xFFFFFFFF;
if (z != 0) {
area = 1LL << (32 - z);
}
long long area = area = 1LL << (32 - z);
long long clip_buffer = buffer * area / 256;
return simple_clip_poly(geom, -clip_buffer, -clip_buffer, area + clip_buffer, area + clip_buffer);
@ -863,13 +856,10 @@ drawvec clip_point(drawvec &geom, int z, int detail, long long buffer) {
drawvec out;
long long min = 0;
long long area = 0xFFFFFFFF;
if (z != 0) {
area = 1LL << (32 - z);
long long area = 1LL << (32 - z);
min -= buffer * area / 256;
area += buffer * area / 256;
}
min -= buffer * area / 256;
area += buffer * area / 256;
for (size_t i = 0; i < geom.size(); i++) {
if (geom[i].x >= min && geom[i].y >= min && geom[i].x <= area && geom[i].y <= area) {
@ -882,13 +872,10 @@ drawvec clip_point(drawvec &geom, int z, int detail, long long buffer) {
int quick_check(long long *bbox, int z, int detail, long long buffer) {
long long min = 0;
long long area = 0xFFFFFFFF;
if (z != 0) {
area = 1LL << (32 - z);
long long area = 1LL << (32 - z);
min -= buffer * area / 256;
area += buffer * area / 256;
}
min -= buffer * area / 256;
area += buffer * area / 256;
// bbox entirely outside the tile
if (bbox[0] > area || bbox[1] > area) {
@ -920,13 +907,9 @@ drawvec clip_lines(drawvec &geom, int z, int detail, long long buffer) {
drawvec out;
long long min = 0;
long long area = 0xFFFFFFFF;
if (z != 0) {
area = 1LL << (32 - z);
min -= buffer * area / 256;
area += buffer * area / 256;
}
long long area = 1LL << (32 - z);
min -= buffer * area / 256;
area += buffer * area / 256;
for (size_t i = 0; i < geom.size(); i++) {
if (i > 0 && (geom[i - 1].op == VT_MOVETO || geom[i - 1].op == VT_LINETO) && geom[i].op == VT_LINETO) {
@ -1070,10 +1053,7 @@ drawvec impose_tile_boundaries(drawvec &geom, long long extent) {
drawvec simplify_lines(drawvec &geom, int z, int detail, bool mark_tile_bounds) {
int res = 1 << (32 - detail - z);
long long area = 0xFFFFFFFF;
if (z != 0) {
area = 1LL << (32 - z);
}
long long area = 1LL << (32 - z);
for (size_t i = 0; i < geom.size(); i++) {
if (geom[i].op == VT_MOVETO) {

View File

@ -12,7 +12,7 @@
}, "features": [
{ "type": "FeatureCollection", "properties": { "zoom": 0, "x": 0, "y": 0 }, "features": [
{ "type": "FeatureCollection", "properties": { "layer": "in" }, "features": [
{ "type": "Feature", "properties": { "boolean": true, "otherboolean": false, "stringify": "[\"yes\",27.00000000,27,1.4e27,{\"foo\":\"bar\"}]", "escape": "foo\u0001bar,ü\"\\/\u0008\u000c\u000a\u000d\u0009→", "prêt": "ready" }, "geometry": { "type": "Polygon", "coordinates": [ [ [ -177.539062, 44.339565 ], [ -164.882812, 43.389082 ], [ -153.281250, 46.619261 ], [ -144.492188, 51.179343 ], [ -143.789062, 57.183902 ], [ -148.007812, 61.100789 ], [ -158.554688, 63.860036 ], [ -169.453125, 64.510643 ], [ -177.890625, 62.593341 ], [ -180.000000, 61.689872 ], [ -185.976562, 58.859224 ], [ -187.031250, 56.992883 ], [ -187.031250, 65.730626 ], [ -182.460938, 67.339861 ], [ -180.000000, 67.542167 ], [ -169.101562, 68.269387 ], [ -156.093750, 68.138852 ], [ -144.492188, 66.089364 ], [ -134.648438, 62.431074 ], [ -131.835938, 55.379110 ], [ -133.593750, 48.690960 ], [ -146.250000, 38.616870 ], [ -169.453125, 34.957995 ], [ -180.000000, 36.527295 ], [ -184.218750, 37.160317 ], [ -187.031250, 38.891033 ], [ -187.031250, 50.457504 ], [ -185.976562, 47.279229 ], [ -177.539062, 44.339565 ] ], [ [ 186.943359, 35.460670 ], [ 179.912109, 36.527295 ], [ 175.781250, 37.160317 ], [ 161.718750, 45.336702 ], [ 156.796875, 55.028022 ], [ 163.476562, 62.431074 ], [ 170.507812, 64.811557 ], [ 177.539062, 67.339861 ], [ 179.912109, 67.542167 ], [ 186.943359, 68.007571 ], [ 186.943359, 63.743631 ], [ 182.109375, 62.593341 ], [ 179.912109, 61.689872 ], [ 174.023438, 58.859224 ], [ 171.562500, 54.418930 ], [ 174.023438, 47.279229 ], [ 179.912109, 45.274886 ], [ 182.460938, 44.339565 ], [ 186.943359, 44.024422 ], [ 186.943359, 35.460670 ] ] ] } }
{ "type": "Feature", "properties": { "boolean": true, "otherboolean": false, "stringify": "[\"yes\",27.00000000,27,1.4e27,{\"foo\":\"bar\"}]", "escape": "foo\u0001bar,ü\"\\/\u0008\u000c\u000a\u000d\u0009→", "prêt": "ready" }, "geometry": { "type": "MultiPolygon", "coordinates": [ [ [ [ -177.539062, 44.339565 ], [ -164.882812, 43.389082 ], [ -153.281250, 46.619261 ], [ -144.492188, 51.179343 ], [ -143.789062, 57.183902 ], [ -148.007812, 61.100789 ], [ -158.554688, 63.860036 ], [ -169.453125, 64.510643 ], [ -177.890625, 62.593341 ], [ -180.000000, 61.689872 ], [ -185.976562, 58.859224 ], [ -187.031250, 56.992883 ], [ -187.031250, 65.730626 ], [ -182.460938, 67.339861 ], [ -180.000000, 67.542167 ], [ -169.101562, 68.269387 ], [ -156.093750, 68.138852 ], [ -144.492188, 66.089364 ], [ -134.648438, 62.431074 ], [ -131.835938, 55.379110 ], [ -133.593750, 48.690960 ], [ -146.250000, 38.616870 ], [ -169.453125, 34.957995 ], [ -180.000000, 36.527295 ], [ -184.218750, 37.160317 ], [ -187.031250, 38.891033 ], [ -187.031250, 50.457504 ], [ -185.976562, 47.279229 ], [ -177.539062, 44.339565 ] ] ], [ [ [ 187.031250, 35.460670 ], [ 175.781250, 37.160317 ], [ 161.718750, 45.336702 ], [ 156.796875, 55.028022 ], [ 163.476562, 62.431074 ], [ 170.507812, 64.811557 ], [ 177.539062, 67.339861 ], [ 180.000000, 67.542167 ], [ 187.031250, 68.007571 ], [ 187.031250, 63.743631 ], [ 182.109375, 62.593341 ], [ 180.000000, 61.689872 ], [ 174.023438, 58.859224 ], [ 171.562500, 54.418930 ], [ 174.023438, 47.279229 ], [ 182.460938, 44.339565 ], [ 187.031250, 44.024422 ], [ 187.031250, 35.460670 ] ] ] ] } }
,
{ "type": "Feature", "properties": { "zoom": "z0-2" }, "geometry": { "type": "LineString", "coordinates": [ [ -112.851562, 55.178868 ], [ -117.773438, 44.590467 ], [ -104.414062, 51.179343 ] ] } }
] }

View File

@ -974,7 +974,7 @@
{ "type": "FeatureCollection", "properties": { "layer": "tabblock_06001420" }, "features": [
{ "type": "Feature", "properties": { "STATEFP10": "06", "COUNTYFP10": "001", "TRACTCE10": "420300", "BLOCKCE10": "3008", "NAME10": "Block 3008", "MTFCC10": "G5040", "UR10": "R", "FUNCSTAT10": "S", "ALAND10": 0, "AWATER10": 1111196, "INTPTLAT10": "+37.8928912", "INTPTLON10": "-122.3202957" }, "geometry": { "type": "Polygon", "coordinates": [ [ [ -122.312679, 37.897072 ], [ -122.311649, 37.896937 ], [ -122.311649, 37.896260 ], [ -122.311134, 37.896124 ], [ -122.311306, 37.895853 ], [ -122.310791, 37.895582 ], [ -122.310276, 37.894769 ], [ -122.309246, 37.892331 ], [ -122.309418, 37.889757 ], [ -122.309933, 37.888809 ], [ -122.310963, 37.889757 ], [ -122.311134, 37.890299 ], [ -122.311478, 37.890028 ], [ -122.312851, 37.891247 ], [ -122.313709, 37.891925 ], [ -122.314396, 37.892060 ], [ -122.314739, 37.892466 ], [ -122.314568, 37.891925 ], [ -122.315941, 37.891925 ], [ -122.316113, 37.891247 ], [ -122.317657, 37.890976 ], [ -122.319889, 37.890028 ], [ -122.322807, 37.890028 ], [ -122.324009, 37.892466 ], [ -122.325726, 37.892602 ], [ -122.325897, 37.892331 ], [ -122.325554, 37.892060 ], [ -122.325726, 37.890841 ], [ -122.327442, 37.890841 ], [ -122.327442, 37.891518 ], [ -122.327614, 37.891518 ], [ -122.327614, 37.889757 ], [ -122.334824, 37.889622 ], [ -122.333450, 37.892873 ], [ -122.312508, 37.897479 ], [ -122.312679, 37.897072 ] ] ] } }
,
{ "type": "Feature", "properties": { "STATEFP10": "06", "COUNTYFP10": "001", "TRACTCE10": "420300", "BLOCKCE10": "3009", "NAME10": "Block 3009", "MTFCC10": "G5040", "UR10": "U", "UACE10": "78904", "UATYP10": "U", "FUNCSTAT10": "S", "ALAND10": 265574, "AWATER10": 0, "INTPTLAT10": "+37.8905867", "INTPTLON10": "-122.3181131" }, "geometry": { "type": "Polygon", "coordinates": [ [ [ -122.310104, 37.894769 ], [ -122.309246, 37.893144 ], [ -122.308903, 37.890570 ], [ -122.309074, 37.888809 ], [ -122.309246, 37.887860 ], [ -122.311306, 37.889486 ], [ -122.327614, 37.889757 ], [ -122.327614, 37.891518 ], [ -122.327442, 37.891518 ], [ -122.327442, 37.890841 ], [ -122.325897, 37.890841 ], [ -122.325554, 37.891518 ], [ -122.325897, 37.892602 ], [ -122.324009, 37.892466 ], [ -122.322807, 37.890028 ], [ -122.319889, 37.890028 ], [ -122.317657, 37.890976 ], [ -122.316113, 37.891247 ], [ -122.315941, 37.891925 ], [ -122.314568, 37.891925 ], [ -122.314739, 37.892466 ], [ -122.314396, 37.892060 ], [ -122.313709, 37.891925 ], [ -122.312851, 37.891247 ], [ -122.311478, 37.890028 ], [ -122.311134, 37.890299 ], [ -122.310963, 37.889757 ], [ -122.309933, 37.888809 ], [ -122.309418, 37.889757 ], [ -122.309246, 37.892331 ], [ -122.310276, 37.894769 ], [ -122.310791, 37.895582 ], [ -122.310104, 37.894769 ] ], [ [ -122.311134, 37.896124 ], [ -122.310791, 37.895582 ], [ -122.311306, 37.895853 ], [ -122.311134, 37.896124 ] ], [ [ -122.311649, 37.896801 ], [ -122.311134, 37.896124 ], [ -122.311649, 37.896260 ], [ -122.311649, 37.896801 ] ] ] } }
{ "type": "Feature", "properties": { "STATEFP10": "06", "COUNTYFP10": "001", "TRACTCE10": "420300", "BLOCKCE10": "3009", "NAME10": "Block 3009", "MTFCC10": "G5040", "UR10": "U", "UACE10": "78904", "UATYP10": "U", "FUNCSTAT10": "S", "ALAND10": 265574, "AWATER10": 0, "INTPTLAT10": "+37.8905867", "INTPTLON10": "-122.3181131" }, "geometry": { "type": "MultiPolygon", "coordinates": [ [ [ [ -122.310104, 37.894769 ], [ -122.309246, 37.893144 ], [ -122.308903, 37.890570 ], [ -122.309074, 37.888809 ], [ -122.309246, 37.887860 ], [ -122.311306, 37.889486 ], [ -122.327614, 37.889757 ], [ -122.327614, 37.891518 ], [ -122.327442, 37.891518 ], [ -122.327442, 37.890841 ], [ -122.325897, 37.890841 ], [ -122.325554, 37.891518 ], [ -122.325897, 37.892602 ], [ -122.324009, 37.892466 ], [ -122.322807, 37.890028 ], [ -122.319889, 37.890028 ], [ -122.317657, 37.890976 ], [ -122.316113, 37.891247 ], [ -122.315941, 37.891925 ], [ -122.314568, 37.891925 ], [ -122.314739, 37.892466 ], [ -122.314396, 37.892060 ], [ -122.313709, 37.891925 ], [ -122.312851, 37.891247 ], [ -122.311478, 37.890028 ], [ -122.311134, 37.890299 ], [ -122.310963, 37.889757 ], [ -122.309933, 37.888809 ], [ -122.309418, 37.889757 ], [ -122.309246, 37.892331 ], [ -122.310276, 37.894769 ], [ -122.310791, 37.895582 ], [ -122.310104, 37.894769 ] ] ], [ [ [ -122.311134, 37.896124 ], [ -122.310791, 37.895582 ], [ -122.311306, 37.895853 ], [ -122.311134, 37.896124 ] ] ], [ [ [ -122.311649, 37.896801 ], [ -122.311134, 37.896124 ], [ -122.311649, 37.896260 ], [ -122.311649, 37.896801 ] ] ] ] } }
,
{ "type": "Feature", "properties": { "STATEFP10": "06", "COUNTYFP10": "001", "TRACTCE10": "420300", "BLOCKCE10": "3007", "NAME10": "Block 3007", "MTFCC10": "G5040", "UR10": "U", "UACE10": "78904", "UATYP10": "U", "FUNCSTAT10": "S", "ALAND10": 3648, "AWATER10": 0, "INTPTLAT10": "+37.8971393", "INTPTLON10": "-122.3121267" }, "geometry": { "type": "Polygon", "coordinates": [ [ [ -122.311649, 37.896937 ], [ -122.312508, 37.896937 ], [ -122.312508, 37.897479 ], [ -122.312164, 37.897479 ], [ -122.311649, 37.896937 ] ] ] } }
,
@ -1458,7 +1458,7 @@
{ "type": "FeatureCollection", "properties": { "layer": "tabblock_06001420" }, "features": [
{ "type": "Feature", "properties": { "STATEFP10": "06", "COUNTYFP10": "001", "TRACTCE10": "420300", "BLOCKCE10": "3008", "NAME10": "Block 3008", "MTFCC10": "G5040", "UR10": "R", "FUNCSTAT10": "S", "ALAND10": 0, "AWATER10": 1111196, "INTPTLAT10": "+37.8928912", "INTPTLON10": "-122.3202957" }, "geometry": { "type": "Polygon", "coordinates": [ [ [ -122.312593, 37.897072 ], [ -122.311649, 37.896869 ], [ -122.311563, 37.896192 ], [ -122.311134, 37.896056 ], [ -122.311306, 37.895785 ], [ -122.311134, 37.895582 ], [ -122.310705, 37.895514 ], [ -122.310619, 37.895108 ], [ -122.310190, 37.894769 ], [ -122.309504, 37.893482 ], [ -122.309160, 37.892263 ], [ -122.309074, 37.891315 ], [ -122.309332, 37.889757 ], [ -122.309504, 37.889147 ], [ -122.309847, 37.888809 ], [ -122.310104, 37.888944 ], [ -122.310190, 37.889147 ], [ -122.310877, 37.889757 ], [ -122.311049, 37.890231 ], [ -122.311134, 37.890299 ], [ -122.311220, 37.889960 ], [ -122.311392, 37.889960 ], [ -122.311735, 37.890434 ], [ -122.312765, 37.891247 ], [ -122.313709, 37.891925 ], [ -122.314310, 37.891992 ], [ -122.314739, 37.892466 ], [ -122.314825, 37.892466 ], [ -122.314568, 37.891925 ], [ -122.315941, 37.891925 ], [ -122.316027, 37.891180 ], [ -122.317657, 37.890976 ], [ -122.319889, 37.889960 ], [ -122.322721, 37.890028 ], [ -122.323151, 37.891044 ], [ -122.324009, 37.892399 ], [ -122.325726, 37.892534 ], [ -122.325897, 37.892331 ], [ -122.325554, 37.892060 ], [ -122.325640, 37.890841 ], [ -122.327356, 37.890841 ], [ -122.327442, 37.891518 ], [ -122.327528, 37.891586 ], [ -122.327614, 37.891450 ], [ -122.327700, 37.890231 ], [ -122.327614, 37.889689 ], [ -122.334738, 37.889622 ], [ -122.333450, 37.892805 ], [ -122.312508, 37.897479 ], [ -122.312593, 37.897072 ] ] ] } }
,
{ "type": "Feature", "properties": { "STATEFP10": "06", "COUNTYFP10": "001", "TRACTCE10": "420300", "BLOCKCE10": "3009", "NAME10": "Block 3009", "MTFCC10": "G5040", "UR10": "U", "UACE10": "78904", "UATYP10": "U", "FUNCSTAT10": "S", "ALAND10": 265574, "AWATER10": 0, "INTPTLAT10": "+37.8905867", "INTPTLON10": "-122.3181131" }, "geometry": { "type": "Polygon", "coordinates": [ [ [ -122.308903, 37.890502 ], [ -122.308989, 37.888809 ], [ -122.309246, 37.887860 ], [ -122.309847, 37.888131 ], [ -122.311306, 37.889486 ], [ -122.315598, 37.889689 ], [ -122.315855, 37.889554 ], [ -122.327614, 37.889689 ], [ -122.327614, 37.891450 ], [ -122.327528, 37.891586 ], [ -122.327442, 37.891518 ], [ -122.327356, 37.890841 ], [ -122.325811, 37.890841 ], [ -122.325640, 37.890976 ], [ -122.325554, 37.891518 ], [ -122.325554, 37.892060 ], [ -122.325897, 37.892331 ], [ -122.325897, 37.892534 ], [ -122.324009, 37.892399 ], [ -122.323151, 37.891044 ], [ -122.322721, 37.890028 ], [ -122.319889, 37.889960 ], [ -122.317657, 37.890976 ], [ -122.316027, 37.891180 ], [ -122.315941, 37.891925 ], [ -122.314568, 37.891925 ], [ -122.314825, 37.892466 ], [ -122.314739, 37.892466 ], [ -122.314310, 37.891992 ], [ -122.313709, 37.891925 ], [ -122.312765, 37.891247 ], [ -122.311735, 37.890434 ], [ -122.311392, 37.889960 ], [ -122.311220, 37.889960 ], [ -122.311134, 37.890299 ], [ -122.311049, 37.890231 ], [ -122.310877, 37.889757 ], [ -122.310190, 37.889147 ], [ -122.310104, 37.888944 ], [ -122.309847, 37.888809 ], [ -122.309504, 37.889147 ], [ -122.309332, 37.889757 ], [ -122.309074, 37.891315 ], [ -122.309074, 37.891518 ], [ -122.308903, 37.890502 ] ], [ [ -122.310190, 37.894769 ], [ -122.310619, 37.895108 ], [ -122.310705, 37.895514 ], [ -122.311134, 37.895582 ], [ -122.311306, 37.895785 ], [ -122.311134, 37.896056 ], [ -122.311563, 37.896192 ], [ -122.311563, 37.896734 ], [ -122.310705, 37.895785 ], [ -122.310019, 37.894769 ], [ -122.309246, 37.893076 ], [ -122.309160, 37.892399 ], [ -122.309504, 37.893482 ], [ -122.310190, 37.894769 ] ] ] } }
{ "type": "Feature", "properties": { "STATEFP10": "06", "COUNTYFP10": "001", "TRACTCE10": "420300", "BLOCKCE10": "3009", "NAME10": "Block 3009", "MTFCC10": "G5040", "UR10": "U", "UACE10": "78904", "UATYP10": "U", "FUNCSTAT10": "S", "ALAND10": 265574, "AWATER10": 0, "INTPTLAT10": "+37.8905867", "INTPTLON10": "-122.3181131" }, "geometry": { "type": "MultiPolygon", "coordinates": [ [ [ [ -122.308903, 37.890502 ], [ -122.308989, 37.888809 ], [ -122.309246, 37.887860 ], [ -122.309847, 37.888131 ], [ -122.311306, 37.889486 ], [ -122.315598, 37.889689 ], [ -122.315855, 37.889554 ], [ -122.327614, 37.889689 ], [ -122.327614, 37.891450 ], [ -122.327528, 37.891586 ], [ -122.327442, 37.891518 ], [ -122.327356, 37.890841 ], [ -122.325811, 37.890841 ], [ -122.325640, 37.890976 ], [ -122.325554, 37.891518 ], [ -122.325554, 37.892060 ], [ -122.325897, 37.892331 ], [ -122.325897, 37.892534 ], [ -122.324009, 37.892399 ], [ -122.323151, 37.891044 ], [ -122.322721, 37.890028 ], [ -122.319889, 37.889960 ], [ -122.317657, 37.890976 ], [ -122.316027, 37.891180 ], [ -122.315941, 37.891925 ], [ -122.314568, 37.891925 ], [ -122.314825, 37.892466 ], [ -122.314739, 37.892466 ], [ -122.314310, 37.891992 ], [ -122.313709, 37.891925 ], [ -122.312765, 37.891247 ], [ -122.311735, 37.890434 ], [ -122.311392, 37.889960 ], [ -122.311220, 37.889960 ], [ -122.311134, 37.890299 ], [ -122.311049, 37.890231 ], [ -122.310877, 37.889757 ], [ -122.310190, 37.889147 ], [ -122.310104, 37.888944 ], [ -122.309847, 37.888809 ], [ -122.309504, 37.889147 ], [ -122.309332, 37.889757 ], [ -122.309074, 37.891315 ], [ -122.309074, 37.891518 ], [ -122.308903, 37.890502 ] ] ], [ [ [ -122.310190, 37.894769 ], [ -122.310619, 37.895108 ], [ -122.310705, 37.895514 ], [ -122.311134, 37.895582 ], [ -122.311306, 37.895785 ], [ -122.311134, 37.896056 ], [ -122.311563, 37.896192 ], [ -122.311563, 37.896734 ], [ -122.310705, 37.895785 ], [ -122.310019, 37.894769 ], [ -122.309246, 37.893076 ], [ -122.309160, 37.892399 ], [ -122.309504, 37.893482 ], [ -122.310190, 37.894769 ] ] ] ] } }
,
{ "type": "Feature", "properties": { "STATEFP10": "06", "COUNTYFP10": "001", "TRACTCE10": "420300", "BLOCKCE10": "3007", "NAME10": "Block 3007", "MTFCC10": "G5040", "UR10": "U", "UACE10": "78904", "UATYP10": "U", "FUNCSTAT10": "S", "ALAND10": 3648, "AWATER10": 0, "INTPTLAT10": "+37.8971393", "INTPTLON10": "-122.3121267" }, "geometry": { "type": "Polygon", "coordinates": [ [ [ -122.311649, 37.896869 ], [ -122.312508, 37.896937 ], [ -122.312593, 37.897140 ], [ -122.312508, 37.897479 ], [ -122.312078, 37.897479 ], [ -122.311649, 37.896869 ] ] ] } }
,

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -1 +1 @@
#define VERSION "tippecanoe v1.11.4\n"
#define VERSION "tippecanoe v1.11.5\n"