mirror of
https://github.com/felt/tippecanoe.git
synced 2026-10-06 18:35:41 +02:00
Make tippecanoe-overzoom accept filters from a file
This commit is contained in:
@@ -60,6 +60,7 @@ int main(int argc, char **argv) {
|
|||||||
{"output", required_argument, 0, 'o'},
|
{"output", required_argument, 0, 'o'},
|
||||||
{"filter-points-multiplier", no_argument, 0, 'm'},
|
{"filter-points-multiplier", no_argument, 0, 'm'},
|
||||||
{"feature-filter", required_argument, 0, 'j'},
|
{"feature-filter", required_argument, 0, 'j'},
|
||||||
|
{"feature-filter-file", required_argument, 0, 'J'},
|
||||||
{"preserve-input-order", no_argument, 0, 'o' & 0x1F},
|
{"preserve-input-order", no_argument, 0, 'o' & 0x1F},
|
||||||
{"accumulate-attribute", required_argument, 0, 'E'},
|
{"accumulate-attribute", required_argument, 0, 'E'},
|
||||||
{"unidecode-data", required_argument, 0, 'u' & 0x1F},
|
{"unidecode-data", required_argument, 0, 'u' & 0x1F},
|
||||||
@@ -122,6 +123,25 @@ int main(int argc, char **argv) {
|
|||||||
filter = optarg;
|
filter = optarg;
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
case 'J': {
|
||||||
|
filter = "";
|
||||||
|
|
||||||
|
FILE *f = fopen(optarg, "r");
|
||||||
|
if (f == NULL) {
|
||||||
|
perror(optarg);
|
||||||
|
exit(EXIT_OPEN);
|
||||||
|
}
|
||||||
|
|
||||||
|
char buf[2000];
|
||||||
|
size_t nread;
|
||||||
|
while ((nread = fread(buf, sizeof(char), 2000, f)) != 0) {
|
||||||
|
filter += std::string(buf, nread);
|
||||||
|
}
|
||||||
|
|
||||||
|
fclose(f);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
case 'o' & 0x1F:
|
case 'o' & 0x1F:
|
||||||
preserve_input_order = true;
|
preserve_input_order = true;
|
||||||
break;
|
break;
|
||||||
|
|||||||
Reference in New Issue
Block a user