TouchTerrain is controlled via a Python dictionary (args). The parameters are divided into DEM selection, 3D print settings, and expert settings.
Key Parameter Groups:
1. DEM/Area Selection
importedDEM: Path to a local GeoTIFF file. If None, the system uses online sources.DEM_name: The Google Earth Engine DEM source (e.g., "USGS/3DEP/10m").bllat, bllon, trlat, trlon: Coordinates for the bottom-left and top-right corners of the area.polygon: A GeoJSON polygon (if using geemap to digitize an area).
2. 3D Print Parameters
tilewidth: Width of each tile in mm.printres: Horizontal resolution of the printer in mm (e.g., 0.4).ntilesx, ntilesy: Number of tiles in the X and Y directions.basethick: Thickness of the printed base in mm.zscale: Vertical elevation scaling.fileformat: Output format ("STLb" for binary STL, "STLa" for ASCII STL, "obj" for wavefront OBJ, or "GeoTiff" for raw raster).zip_file_name: Base name for the resulting zip file.
3. Expert Settings
CPU_cores_to_use: 0 for all cores, None for single-core.no_bottom: If True, omits bottom triangles.no_normal: If True, skips normal calculation (faster, but some viewers may struggle).projection: An EPSG integer for UTM projection (defaults to closest UTM zone).
args = {
"importedDEM": None,
"DEM_name": "USGS/3DEP/10m",
"bllat": 44.50185267072875,
"bllon": -108.25427910156247,
"trlat": 44.69741706507476,
"trlon": -107.97962089843747,
"tilewidth": 120,
"printres": 0.4,
"ntilesx": 1,
"ntilesy": 1,
"basethick": 0.6,
"zscale": 2,
"fileformat": "STLb",
"zip_file_name": "myterrain",
"tile_centered": False,
"CPU_cores_to_use": 0,
"max_cells_for_memory_only": 5000**2,
"no_bottom": False,
"no_normal": True,
"bottom_image": None,
"ignore_leq": None,
"lower_leq": None,
"unprojected": False,
"projection": None,
"only": None,
"importedGPX": [],
}