mirror of
https://github.com/felt/tippecanoe.git
synced 2026-10-02 08:25:40 +02:00
Avoid crash if the first bin gets clipped away (#294)
* Avoid crash if the first bin gets clipped away * Add test * Update version and changelog
This commit is contained in:
@@ -1,3 +1,7 @@
|
||||
# 2.69.0
|
||||
|
||||
* Fix crash when the first bin gets clipped away
|
||||
|
||||
# 2.68.0
|
||||
|
||||
* Adds `--no-tile-compression` option to `tippecanoe-overzoom`
|
||||
|
||||
@@ -385,6 +385,9 @@ overzoom-test: tippecanoe-overzoom
|
||||
./tippecanoe-decode tests/pbf/0-0-0-pop-0-0-0.pbf.out 0 0 0 > tests/pbf/0-0-0-pop-0-0-0.pbf.out.json.check
|
||||
cmp tests/pbf/0-0-0-pop-0-0-0.pbf.out.json.check tests/pbf/0-0-0-pop-0-0-0.pbf.out.json
|
||||
rm tests/pbf/0-0-0-pop-0-0-0.pbf.out tests/pbf/0-0-0-pop-0-0-0.pbf.out.json.check
|
||||
# Verify fix for crash
|
||||
./tippecanoe-overzoom '-o' tests/10188-crash/out.pbf '-t' '3/2/2' '--assign-to-bins' 'tests/10188-crash/bins.json' '--bin-by-id-list' 'felt:bin_features' '-b5' 'tests/10188-crash/2-0-0.pbf' '2/0/0'
|
||||
rm tests/10188-crash/out.pbf
|
||||
|
||||
join-test: tippecanoe tippecanoe-decode tile-join
|
||||
./tippecanoe -q -f -z12 -o tests/join-population/tabblock_06001420.mbtiles -YALAND10:'Land area' -L'{"file": "tests/join-population/tabblock_06001420.json", "description": "population"}'
|
||||
|
||||
@@ -1299,7 +1299,8 @@ static void handle_closepath_from_mvt(drawvec &geom) {
|
||||
}
|
||||
}
|
||||
|
||||
static void feature_out(std::vector<tile_feature> const &features, mvt_layer &outlayer,
|
||||
// returns true if a feature was output; false if it was clipped away
|
||||
static bool feature_out(std::vector<tile_feature> const &features, mvt_layer &outlayer,
|
||||
std::set<std::string> const &keep,
|
||||
std::set<std::string> const &exclude,
|
||||
std::vector<std::string> const &exclude_prefix,
|
||||
@@ -1427,7 +1428,10 @@ static void feature_out(std::vector<tile_feature> const &features, mvt_layer &ou
|
||||
}
|
||||
|
||||
outlayer.features.push_back(std::move(outfeature));
|
||||
return true;
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
static struct preservecmp {
|
||||
@@ -1719,21 +1723,22 @@ mvt_tile assign_to_bins(mvt_tile &features,
|
||||
|
||||
for (size_t i = 0; i < outfeatures.size(); i++) {
|
||||
if (outfeatures[i].size() > 1) {
|
||||
feature_out(outfeatures[i], outlayer,
|
||||
keep, exclude, exclude_prefix, attribute_accum,
|
||||
accumulate_numeric, key_pool, buffer);
|
||||
mvt_feature &nfeature = outlayer.features.back();
|
||||
mvt_value val;
|
||||
val.type = mvt_uint;
|
||||
val.numeric_value.uint_value = outfeatures[i].size() - 1;
|
||||
if (feature_out(outfeatures[i], outlayer,
|
||||
keep, exclude, exclude_prefix, attribute_accum,
|
||||
accumulate_numeric, key_pool, buffer)) {
|
||||
mvt_feature &nfeature = outlayer.features.back();
|
||||
mvt_value val;
|
||||
val.type = mvt_uint;
|
||||
val.numeric_value.uint_value = outfeatures[i].size() - 1;
|
||||
|
||||
std::string attrname;
|
||||
if (accumulate_numeric.size() == 0) {
|
||||
attrname = "tippecanoe:count";
|
||||
} else {
|
||||
attrname = accumulate_numeric + ":count";
|
||||
std::string attrname;
|
||||
if (accumulate_numeric.size() == 0) {
|
||||
attrname = "tippecanoe:count";
|
||||
} else {
|
||||
attrname = accumulate_numeric + ":count";
|
||||
}
|
||||
outlayer.tag(nfeature, attrname, val);
|
||||
}
|
||||
outlayer.tag(nfeature, attrname, val);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -0,0 +1,565 @@
|
||||
ޢx
|
||||
parsed(� ␍felt:h3_index SCALERANKNATSCALE LABELRANK
|
||||
FEATURECLANAME NAMEASCIIADM0CAP WORLDCITYMEGACITYSOV0NAMESOV_A3ADM0NAMEADM0_A3ADM1NAMEISO_A2LATITUDE LONGITUDEPOP_MAXPOP_MIN POP_OTHERRANK_MAXRANK_MINLS_NAME MAX_POP10 MAX_POP20 MAX_POP50
|
||||
MAX_POP300
|
||||
MAX_POP310
|
||||
MAX_NATSCA
|
||||
MIN_AREAKM
|
||||
MAX_AREAKM
|
||||
MIN_AREAMI
|
||||
MAX_AREAMI MIN_PERKM MAX_PERKM MIN_PERMI MAX_PERMI
|
||||
MIN_BBXMIN
|
||||
MAX_BBXMIN
|
||||
MIN_BBXMAX
|
||||
MAX_BBXMAX
|
||||
MIN_BBYMIN
|
||||
MAX_BBYMIN
|
||||
MIN_BBYMAX
|
||||
MAX_BBYMAX MEAN_BBXC MEAN_BBYCUN_FIDPOP1950POP1955POP1960POP1965POP1970POP1975POP1980POP1985POP1990POP1995POP2000POP2005POP2010POP2015POP2020POP2025POP2050MIN_ZOOM
|
||||
WIKIDATAIDWOF_IDCAPALTNAME_ENNAME_DENAME_ESNAME_FRNAME_PTNAME_RUNAME_ZHNAME_ARNAME_BNNAME_ELNAME_HINAME_HUNAME_IDNAME_ITNAME_JANAME_KONAME_NLNAME_PLNAME_SVNAME_TRNAME_VINE_IDNAME_FANAME_HENAME_UKNAME_URNAME_ZHT
|
||||
GEONAMESIDfelt:cluster_size,tippecanoe:retain_points_multiplier_sequence)tippecanoe:retain_points_multiplier_firstPOP_MINPOP1990POP_MINPOP1990POP_MINPOP1990POP_MINPOP1990NAMEALTPOP_MINPOP1990POP_MINPOP1990POP_MINPOP1990POP_MINPOP1990POP_MINPOP1990POP_MINTIMEZONEPOP1990POP_MINPOP1990POP_MINPOP1990POP_MINPOP1990POP_MINPOP1990POP_MINPOP1990POP_MINPOP1990POP_MINPOP1990POP_MINPOP1990POP_MINPOP1990POP_MINPOP1990POP_MINPOP1990POP_MINPOP1990POP_MINPOP1990POP_MINPOP1990NAMEPARPOP_MINPOP1990POP_MINPOP1990POP_MINPOP1990"
|
||||
CA"
|
||||
RU"
|
||||
US"
|
||||
CAN"
|
||||
RUS"
|
||||
USA"
|
||||
Kobuk"
|
||||
Alaska"
|
||||
Ambler"
|
||||
Barrow"
|
||||
Canada"
|
||||
Holman"
|
||||
Inuvik"
|
||||
Q79333"
|
||||
Q79350"
|
||||
Q79395"
|
||||
Q79408"
|
||||
Q79714"
|
||||
Q79717"
|
||||
Q79809"
|
||||
Q79810"
|
||||
Q79813"
|
||||
Q80033"
|
||||
Q80133"
|
||||
Russia"
|
||||
巴罗"
|
||||
巴羅"
|
||||
배로"
|
||||
코북"
|
||||
홀만"
|
||||
Atqasuk"
|
||||
Nunavut"
|
||||
Q338686"
|
||||
Q465235"
|
||||
Q602422"
|
||||
Q606622"
|
||||
Q718822"
|
||||
Q719547"
|
||||
Q719585"
|
||||
Q719605"
|
||||
Q719611"
|
||||
Q719707"
|
||||
Q924763"
|
||||
Selawik"
|
||||
Wiseman"
|
||||
İnuvik"
|
||||
|
||||
Enurmino"
|
||||
|
||||
Kaktovik"
|
||||
|
||||
Kivalina"
|
||||
|
||||
Kotzebue"
|
||||
|
||||
Paulatuk"
|
||||
|
||||
Q1013046"
|
||||
|
||||
Q1014088"
|
||||
|
||||
Q1014119"
|
||||
|
||||
Q1020259"
|
||||
|
||||
Q1938137"
|
||||
|
||||
Q2305684"
|
||||
|
||||
Resolute"
|
||||
|
||||
Taloyoak"
|
||||
|
||||
Zvezdnyi"
|
||||
|
||||
Zvezdnyj"
|
||||
|
||||
Zvezdnyy"
|
||||
|
||||
Zvjozdny"
|
||||
|
||||
בארו"
|
||||
|
||||
بارو"
|
||||
|
||||
بیرو"
|
||||
|
||||
کوبک"
|
||||
Allakaket"
|
||||
Enoermino"
|
||||
Enourmino"
|
||||
Kugluktuk"
|
||||
Utqiagvik"
|
||||
Zvëzdnyj"
|
||||
コブク"
|
||||
バロー"
|
||||
剑桥湾"
|
||||
劍橋灣"
|
||||
安布勒"
|
||||
懷斯曼"
|
||||
温赖特"
|
||||
科伯克"
|
||||
科策布"
|
||||
約阿港"
|
||||
育空堡"
|
||||
셀라윅"
|
||||
앰블러"
|
||||
앳쿼석"
|
||||
이누빅"
|
||||
코체부"
|
||||
|
||||
Fort Yukon"
|
||||
|
||||
Gjoa Haven"
|
||||
|
||||
Point Hope"
|
||||
|
||||
Ulukhaktok"
|
||||
|
||||
Utqiaġvik"
|
||||
|
||||
Wainwright"
|
||||
|
||||
Кобук"
|
||||
|
||||
אלקקט"
|
||||
|
||||
אמבלר"
|
||||
|
||||
חולמן"
|
||||
|
||||
קובוק"
|
||||
|
||||
امبلر"
|
||||
|
||||
انوئک"
|
||||
|
||||
رزلوت"
|
||||
|
||||
كوبوك"
|
||||
|
||||
کوبوک"
|
||||
Fort Yukón"
|
||||
Mys Chmidta"
|
||||
Mys Shmidta"
|
||||
Mys Sjmidta"
|
||||
Mys Szmidta"
|
||||
Mys Šmidta"
|
||||
Prudhoe Bay"
|
||||
Tuktoyaktuk"
|
||||
Ikaluktutiak"
|
||||
Mys Schmidta"
|
||||
Resolute Bay"
|
||||
Tsiigehtchic"
|
||||
Άμπλερ"
|
||||
Χόλμαν"
|
||||
Інувік"
|
||||
Амблер"
|
||||
Барроу"
|
||||
Инувик"
|
||||
Коцебу"
|
||||
וויזמן"
|
||||
טלויאק"
|
||||
קוצביו"
|
||||
רזולוט"
|
||||
أمبلير"
|
||||
إنوفيك"
|
||||
ایمبلر"
|
||||
سلاویک"
|
||||
سیلاوک"
|
||||
سیگیچک"
|
||||
هولمان"
|
||||
وایزمن"
|
||||
پالتاک"
|
||||
پولاٹک"
|
||||
ہولمان"
|
||||
努勒維特"
|
||||
因纽维克"
|
||||
基瓦利纳"
|
||||
塔洛約克"
|
||||
塞拉威克"
|
||||
施密特岬"
|
||||
波拉圖克"
|
||||
雷索卢特"
|
||||
齊格奇克"
|
||||
뚝토약툭"
|
||||
리솔루트"
|
||||
알라카켓"
|
||||
와이즈맨"
|
||||
치이게치"
|
||||
키발리나"
|
||||
탈로요크"
|
||||
파울라툭"
|
||||
␍Cambridge Bay"
|
||||
␍United States"
|
||||
␍포트 유콘"
|
||||
America/Inuvik"
|
||||
America/Juneau"
|
||||
Campbridge Bay"
|
||||
Fort McPherson"
|
||||
Prudhoe-öböl"
|
||||
Ινούβικ"
|
||||
Κομπούκ"
|
||||
Μπάροου"
|
||||
Σελαβίκ"
|
||||
Аткасук"
|
||||
Вайзмен"
|
||||
Полатук"
|
||||
Селавик"
|
||||
Селавік"
|
||||
Уайзмен"
|
||||
Цігечик"
|
||||
אטקאסוק"
|
||||
אינוויק"
|
||||
סלאוויק"
|
||||
קקטוביק"
|
||||
آتکاسوک"
|
||||
آلاکاکت"
|
||||
اینوویک"
|
||||
ایٹقاسک"
|
||||
بولاتوك"
|
||||
تالویوک"
|
||||
تسیگچیک"
|
||||
زویزڈنج"
|
||||
سيلاويك"
|
||||
كوتزبيو"
|
||||
نورمینو"
|
||||
وائزمین"
|
||||
وينرايت"
|
||||
وینرائٹ"
|
||||
وینرایت"
|
||||
ٹالویوک"
|
||||
کگ لک تک"
|
||||
کیکٹووک"
|
||||
Populated place"
|
||||
جوا ہیون"
|
||||
وايز مان"
|
||||
پرودو بی"
|
||||
कोबुक"
|
||||
কসেভো"
|
||||
কোবুক"
|
||||
アンブラー"
|
||||
エヌルミノ"
|
||||
カクトビク"
|
||||
キバリーナ"
|
||||
セラウィク"
|
||||
タロヨーク"
|
||||
ワイズマン"
|
||||
卡克托维克"
|
||||
普拉德霍湾"
|
||||
普拉德霍灣"
|
||||
波因特霍普"
|
||||
烏路卡托克"
|
||||
艾奴爾米諾"
|
||||
艾特跨萨克"
|
||||
茲韋茲德尼"
|
||||
迈斯施密达"
|
||||
阿拉卡基特"
|
||||
麥克弗森堡"
|
||||
麦克弗森堡"
|
||||
에누르미노"
|
||||
웨인라이트"
|
||||
카크토비크"
|
||||
쿠글룩투크"
|
||||
America/Resolute"
|
||||
Vịnh Cambridge"
|
||||
Αλακάκετ"
|
||||
Ατκασούκ"
|
||||
Ζβέζντιγ"
|
||||
Κάκτοβικ"
|
||||
Κιβαλίνα"
|
||||
Ρεσολούτ"
|
||||
Вейнрайт"
|
||||
Енурміно"
|
||||
Звёздный"
|
||||
Кактовик"
|
||||
Кактовік"
|
||||
Кивалина"
|
||||
Паулатук"
|
||||
Резольют"
|
||||
Талойоак"
|
||||
Уэйнрайт"
|
||||
Цигетчик"
|
||||
Энурмино"
|
||||
אנורמינו"
|
||||
ויינרייט"
|
||||
פאולאטוק"
|
||||
ציג'טצ'יק"
|
||||
קיוולינה"
|
||||
أتكيوسوك"
|
||||
ألاكاكيت"
|
||||
إنورمينو"
|
||||
انورمینو"
|
||||
تالويواك"
|
||||
ریسولوتی"
|
||||
زووزدنیج"
|
||||
زيفازدني"
|
||||
كاكتوفيك"
|
||||
كيفالينا"
|
||||
کاکتوویک"
|
||||
کوتزابیو"
|
||||
کوتزهبیو"
|
||||
کیوالینا"
|
||||
미스 슈미타"
|
||||
조아 헤이븐"
|
||||
포인트 호프"
|
||||
포트 맥퍼슨"
|
||||
프루도 베이"
|
||||
Форт-Юкон"
|
||||
פוינט הופ"
|
||||
פרודו ביי"
|
||||
بوينت هوب"
|
||||
پروڈہو بے"
|
||||
پوینت هوپ"
|
||||
کمبریج بی"
|
||||
کیمبرج بے"
|
||||
Γουάιζμαν"
|
||||
Ενουρμίνο"
|
||||
Ταλογιοάκ"
|
||||
Аллакакет"
|
||||
Звьоздний"
|
||||
Куглуктук"
|
||||
זביוזדניי"
|
||||
ایلاکاکیٹ"
|
||||
كوغلوكتوك"
|
||||
مایسشمیتا"
|
||||
ٹکٹویاکٹک"
|
||||
کوگلاکتوک"
|
||||
इनुविक"
|
||||
होलमैन"
|
||||
ইনুভিক"
|
||||
アラカキット"
|
||||
イヌヴィック"
|
||||
コッツビュー"
|
||||
シュミット岬"
|
||||
ズヴョズニィ"
|
||||
パウラトゥク"
|
||||
プルードー湾"
|
||||
レゾリュート"
|
||||
伊尔库茨克州"
|
||||
图克托亚图克"
|
||||
圖克托亞圖克"
|
||||
库格鲁克图克"
|
||||
庫格魯克圖克"
|
||||
즈베즈드니이"
|
||||
Μις Σμίντα"
|
||||
Йоа-Гейвен"
|
||||
Йоа-Хейвен"
|
||||
Мис Барроу"
|
||||
Мис Шмідта"
|
||||
Мыс Шмидта"
|
||||
Пойнт-Гоуп"
|
||||
Пойнт-Хоуп"
|
||||
Прадхо-Бей"
|
||||
מיס שמידטה"
|
||||
פורט יוקון"
|
||||
جیجوی هیون"
|
||||
فورت يوكون"
|
||||
فورت یوکان"
|
||||
فورٹ یوکون"
|
||||
ميس شميدتا"
|
||||
پوائنٹ ہوپ"
|
||||
캠브리지 베이"
|
||||
Γουέινραϊτ"
|
||||
Κοτζέμπουε"
|
||||
Παουλατούκ"
|
||||
Тактояктук"
|
||||
Туктояктук"
|
||||
Улукхакток"
|
||||
גג'ואה האבן"
|
||||
טוקטויאטוק"
|
||||
קוגלולקטוק"
|
||||
اولاکاکچوک"
|
||||
تسيجيهتشيك"
|
||||
Northwest Territories"
|
||||
Γκόα Χέιβεν"
|
||||
Πόιντ Χόουπ"
|
||||
خليج برودهو"
|
||||
فورٹ مکفرسن"
|
||||
مئیس شمیدتا"
|
||||
ऐम्ब्लर"
|
||||
पॉलातुक"
|
||||
रेसोलूट"
|
||||
वेनराइट"
|
||||
सेलाविक"
|
||||
ওয়েনরিট"
|
||||
তালোয়াক"
|
||||
সেলাউইক"
|
||||
アットカサック"
|
||||
ウェインライト"
|
||||
クグルクトゥク"
|
||||
ポイントホープ"
|
||||
توكتوياكتوك"
|
||||
توکتویاکتوک"
|
||||
Προύντο Μπέι"
|
||||
Φορτ Γιούκον"
|
||||
פורט מקפרסון"
|
||||
خليج كامبردج"
|
||||
قرية ريزولوت"
|
||||
Chukchi Autonomous Okrug"
|
||||
United States of America"
|
||||
Τσιγκέχτσιτς"
|
||||
فورت مک فرسون"
|
||||
قرية غوا هافن"
|
||||
अत्कासुक"
|
||||
अलाकाकेट"
|
||||
इनर्मिनो"
|
||||
किवालिना"
|
||||
टालोयोआक"
|
||||
वाइज़मैन"
|
||||
কাকতোভিক"
|
||||
কিভালিনা"
|
||||
পাউলাটুক"
|
||||
রেজোলিউট"
|
||||
সিগেটছিক"
|
||||
হোলম্যান"
|
||||
ウルクハクトーク"
|
||||
ジョア・ヘイヴン"
|
||||
トサイイジチック"
|
||||
フォートユーコン"
|
||||
Кеймбридж-Бей"
|
||||
Кеймбрідж-Бей"
|
||||
فورت ماكفرسون"
|
||||
पॉइंट होप"
|
||||
Κουγκλουκτούκ"
|
||||
קיימברדיג' ביי"
|
||||
Κέιμπριτζ Μπέι"
|
||||
Φορτ ΜακΦέρσον"
|
||||
Форт-Макферсон"
|
||||
काक्तोविक"
|
||||
এনিউরমিনো"
|
||||
ケンブリッジ・ベイ"
|
||||
トゥクトヤクトゥク"
|
||||
Τουκτογιάκτουκ"
|
||||
ज़ोआ हेवेन"
|
||||
प्रुदहो बे"
|
||||
मिस श्मिता"
|
||||
পয়েন্ট হোপ"
|
||||
ফোর্ট ইউকন"
|
||||
उत्कीग्विक"
|
||||
कुग्लुकटूक"
|
||||
कोटज़ेबूये"
|
||||
অ্যাম্বলার"
|
||||
আল্লাকাকেত"
|
||||
উৎকিয়াভিক"
|
||||
ওয়াইজম্যান"
|
||||
কুগ্লুকটুক"!
|
||||
গজোয়া হাভেন"!
|
||||
প্রুদোহে বে"#
|
||||
!त्सीगेत्चिक"#
|
||||
!フォートマクファーソン"$
|
||||
"कैम्ब्रिज बे"$
|
||||
"फ़ोर्ट यूकॉन"$
|
||||
"কেম্ব্রিজ বে"$
|
||||
"মাইস শ্মিদতা"&
|
||||
$অ্যাটকোয়াসুক"&
|
||||
$জেভেজদিনিয়াজ"&
|
||||
$তুকতোইয়াকতুক")
|
||||
'ज़्वेज़्दनिज़")
|
||||
'तुक्तोयाक्तुक"0
|
||||
.फ़ोर्ट मैकफ़र्सन"0
|
||||
.ফোর্ট ম্যাকফারসন" | ||||