Spaces:
Runtime error
Runtime error
| import trimesh | |
| import shutil | |
| import base64 | |
| import os | |
| def save_file(input_file, output_file): | |
| """ | |
| Copy a file from input location to output location. | |
| Args: | |
| input_file (str): Path to the input file. | |
| output_file (str): Path to the output file. | |
| Returns: | |
| bool: True if the file is successfully saved, False otherwise. | |
| """ | |
| try: | |
| shutil.copy(input_file, output_file) | |
| return True | |
| except Exception as e: | |
| print(f"Error: {e}") | |
| return False | |
| def convert_obj_to_stl(input_file: str, output_file: str): | |
| # Load the OBJ file | |
| mesh = trimesh.load(input_file) | |
| # Export as STL | |
| mesh.export(output_file) | |
| def change_file_extension(file_path: str, new_extension: str) -> str: | |
| """ | |
| Change the extension of a file path. | |
| Args: | |
| file_path (str): The original file path. | |
| new_extension (str): The new file extension (without the dot). | |
| Returns: | |
| str: The modified file path with the new extension. | |
| """ | |
| base_path, _ = os.path.splitext(file_path) | |
| new_file_path = base_path + '.' + new_extension | |
| return new_file_path | |
| def file_to_base64(file_location: str) -> str: | |
| """ | |
| This function is to convert files into base64 | |
| ## Input | |
| file_location (str) : the location of the file on the machine | |
| ## Output | |
| the base64 encoding of the file | |
| """ | |
| with open(file_location, "rb") as file: | |
| file_content = file.read() | |
| base64_encoded = base64.b64encode(file_content) | |
| return base64_encoded.decode("utf-8") | |
| def base64_to_file(base64_string: str, output_file_location: str) -> None: | |
| """ | |
| Decodes a base64-encoded string and writes the resulting binary data to a file. | |
| Args: | |
| base64_string (str): The base64-encoded string to decode. | |
| output_file_location (str): The file path where the decoded binary data will be written. | |
| Returns: | |
| None | |
| """ | |
| binary_data = base64.b64decode(base64_string) | |
| with open(output_file_location, "wb") as output_file: | |
| output_file.write(binary_data) | |
| def copy_file_to_location(file_path: str, destination_path: str) -> None: | |
| """ | |
| Copy a file to a new location with the same name. | |
| Args: | |
| file_path: The path of the file to be copied. | |
| destination_path: The path of the destination directory. | |
| """ | |
| shutil.copy(file_path, destination_path) | |
| def remove_files(file_paths): | |
| """Remove files given a list of file paths.""" | |
| for file_path in file_paths: | |
| try: | |
| os.remove(file_path) | |
| print(f"File '{file_path}' removed successfully.") | |
| except OSError as e: | |
| print(f"Error removing file '{file_path}': {e}") |