from stl import mesh import numpy as np def create_cad_model(size): try: # Define 8 vertices of a cube vertices = np.array([ [0, 0, 0], [size, 0, 0], [size, size, 0], [0, size, 0], [0, 0, size], [size, 0, size], [size, size, size], [0, size, size], ]) # Define 12 triangles composing the cube faces = np.array([ [0, 3, 1], [1, 3, 2], [0, 4, 7], [0, 7, 3], [4, 5, 6], [4, 6, 7], [5, 1, 2], [5, 2, 6], [2, 3, 6], [3, 7, 6], [0, 1, 5], [0, 5, 4], ]) # Create the mesh cube_mesh = mesh.Mesh(np.zeros(faces.shape[0], dtype=mesh.Mesh.dtype)) for i, face in enumerate(faces): for j in range(3): cube_mesh.vectors[i][j] = vertices[face[j], :] # Save to file stl_file = "output_cube.stl" cube_mesh.save(stl_file) return f"STL file created successfully: {stl_file}" except Exception as e: return f"Error during STL generation: {str(e)}"