From 17f6009bfc6589d43e10233040b125675d24c5c8 Mon Sep 17 00:00:00 2001 From: Yasutake Yohei <61961825+yasutakeyohei@users.noreply.github.com> Date: Thu, 29 Oct 2026 14:44:19 +0900 Subject: parks: 複数ポリゴンとOSMポリゴンの置き換えに対応 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 同じ公園名の複数ポリゴンをまとめてズーム・アイコン表示する。import-manual-parks.py に --override-name を追加し、手入力ポリゴンでOSMを置き換えられるようにした。草地広場・多目的広場を一覧の検索・ピクニック絞り込みに反映。 --- src/data/parks-geojson.ts | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) (limited to 'src/data') diff --git a/src/data/parks-geojson.ts b/src/data/parks-geojson.ts index e12d297..9fd9d4f 100644 --- a/src/data/parks-geojson.ts +++ b/src/data/parks-geojson.ts @@ -20,6 +20,23 @@ function isHiddenUnlisted(props: any): boolean { const osmFeatures = ((osm as any).features ?? []).filter( (f: any) => !isHiddenUnlisted(f.properties), ); -const features = [...osmFeatures, ...((manual as any).features ?? [])]; +const manualFeatures = (manual as any).features ?? []; + +// 手入力ポリゴンでOSM側の形を置き換える公園(例: 道路で分かれた公園)。 +// QGISの属性 override=true、または import-manual-parks.py の --override-name で付く。 +const overrideNames = new Set( + manualFeatures + .filter((f: any) => { + const value = f?.properties?.override; + return value === true || value === 1 || value === "true" || value === "1"; + }) + .map((f: any) => f?.properties?.our_name) + .filter(Boolean), +); + +const features = [ + ...osmFeatures.filter((f: any) => !overrideNames.has(f.properties?.our_name)), + ...manualFeatures, +]; export default { type: "FeatureCollection", features }; -- cgit v1.3.1