node.js稀疏geojson点位

const fs = require('fs');
const path = require('path');

// 读取原始JSON文件  
let fileName = 'road_shanghai_all_2_polygonZip.json'
let num = 5
fs.readFile(path.join(__dirname,fileName), 'utf8', (err, data) => {
    if (err) {
        console.error(err);
        return;
    }

    // 将JSON字符串转换为JavaScript对象  
    let jsonData = JSON.parse(data);
    // 修改数据(例如,给所有人增加一岁)  
    jsonData.features.forEach(e => {
        let arr = []
        let arr0 = e.geometry.coordinates[0][0].shift()
        e.geometry.coordinates[0][0].pop()
        arr.push(arr0)
        let c = e.geometry.coordinates[0][0];
        for (let i = 1; i < c.length; i += num) {
            arr.push(c[i])
        }
        arr.push(arr0)
        e.geometry.coordinates[0][0] = arr
    });

    // 将JavaScript对象转换回JSON字符串  
    let newJsonData = JSON.stringify(jsonData, null, 0); // 使用缩进使JSON更易读  
    // console.log(__dirname);
    // let address  =__dirname +  "\\handleFile"
    // console.log(address,'address');
    // // 写入新的JSON文件  
    fs.writeFile(path.join(__dirname+"\\handleFile", fileName ), newJsonData, (err) => {
        if (err) {
            console.error(err);
            return;
        }
        console.log('新的JSON文件已保存');
    });
});

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值