diff options
Diffstat (limited to 'src/data/parks-geojson.ts')
| -rw-r--r-- | src/data/parks-geojson.ts | 19 |
1 files changed, 18 insertions, 1 deletions
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 }; |
