import argparse import configparser import logging import pathlib import numpy as np from .stl import stl_from_1d parser = argparse.ArgumentParser(description="Convert swash output to olaFlow input") parser.add_argument("-v", "--verbose", action="count", default=0) parser.add_argument("-c", "--config", default="config.ini") args = parser.parse_args() logging.basicConfig(level=max((10, 20 - 10 * args.verbose))) log = logging.getLogger("sws_ola") log.info("Starting sws -> olaFlow converter") config = configparser.ConfigParser() config.read(args.config) bathy = np.loadtxt(config.get("bathy", "bathy"))[::-1] hstru = np.loadtxt(config.get("bathy", "hstru"))[::-1] poro = bathy + np.where(hstru == 0, -5, hstru) out = pathlib.Path(config.get("bathy", "out")) out.mkdir(exist_ok=True) stl_from_1d( bathy, out.joinpath("bathy.stl"), config.get("bathy", "scale", fallback=[1, 1, 1]), config.get("bathy", "translate", fallback=[0, 0, 0]), ) stl_from_1d( poro, out.joinpath("poro.stl"), config.get("bathy", "scale", fallback=[1, 1, 1]), config.get("bathy", "translate", fallback=[0, 0, 0]), )