"use strict"; import fs from 'fs'; import l from '../../Helpers/Log.mjs'; import Terrain50 from 'terrain50'; export default async function(settings) { if(typeof settings.cli.input !== "string") { l.error("Error: No input file specified (try --filename path/to/heightmap.asc)"); process.exit(1); } if(typeof settings.cli.output !== "string") { l.error("Error: No output file specified (try --filename path/to/output.asc)"); process.exit(1); } l.log(`Reading input files`); let heightmap = Terrain50.Parse(await fs.promises.readFile(settings.cli.input, "utf-8")); l.log(`Rounding values`); heightmap.round(); l.log(`done`); l.log(`Writing result to disk`); await heightmap.serialise(fs.createWriteStream(settings.cli.output)); l.log(`Trimming complete!`); }