From 98f9f5ae729cf4a61bace7c477f5916fd4c00964 Mon Sep 17 00:00:00 2001 From: Artemy Date: Wed, 5 Jul 2023 16:09:05 +0300 Subject: [PATCH] fix: area calculation only for countries --- package-lock.json | 4 ++-- package.json | 2 +- tools/GeoBuilder.js | 8 +++++--- 3 files changed, 8 insertions(+), 6 deletions(-) diff --git a/package-lock.json b/package-lock.json index be4b065..67b8d28 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "cimengine-build-tools", - "version": "1.3.0", + "version": "1.3.1", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "cimengine-build-tools", - "version": "1.3.0", + "version": "1.3.1", "license": "MIT", "dependencies": { "@turf/turf": "^6.5.0", diff --git a/package.json b/package.json index c14037e..2afd565 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "cimengine-build-tools", - "version": "1.3.0", + "version": "1.3.1", "description": "Geojson data processing tools for CIMEngine", "main": "index.js", "scripts": { diff --git a/tools/GeoBuilder.js b/tools/GeoBuilder.js index 5b3da0b..3682e6c 100644 --- a/tools/GeoBuilder.js +++ b/tools/GeoBuilder.js @@ -385,9 +385,11 @@ console.time("Set new ids and area"); let id = 0; geo.features = geo.features.map((val) => { val.id = id++; - val.properties.area = (turf.area(val) / 1000000) - .toFixed(2) - .replace(/(\d)(?=(\d\d\d)+([^\d]|$))/g, "$1 "); + if (val.geometry.type === "MultiPolygon") { + val.properties.area = (turf.area(val) / 1000000) + .toFixed(2) + .replace(/(\d)(?=(\d\d\d)+([^\d]|$))/g, "$1 "); + } return val; });