def METHOD_NAME(args):
    parser = argparse.ArgumentParser(description=__doc__)
    parser.add_argument("dsm", help="Digital surface model (DSM) image file name")
    parser.add_argument("dtm", help="Digital terrain model (DTM) image file name")
    parser.add_argument("output_dir", help="Output directory for cropped pansharpened images")
    parser.add_argument("occlusion_mesh", help="Occlusion mesh name")
    parser.add_argument("--crops", help="List of croped and pansharpened MSI file names",
                        nargs="+", required=True)
    parser.add_argument("--buildings", help="Source OBJ files representing buildings or roads",
                        nargs="+", required=True)
    args = parser.parse_args(args)
    # Create the output directory if it doesn't already exist
    try:
        os.mkdir(args.output_dir)
    except FileExistsError as e:
        pass
    texture_mapping(args.dsm, args.dtm, args.crops, args.output_dir, args.buildings,
                    args.occlusion_mesh)