Compare commits

..

1 Commits

Author SHA1 Message Date
abcf3e712c added a function to convert the step file from the
upload to an obj file for 3D comparison
2026-02-28 00:03:13 +01:00

16
main.py
View File

@@ -1,6 +1,7 @@
import os import os
import tempfile import tempfile
import uuid import uuid
import subprocess
from fastapi import FastAPI, UploadFile, File, HTTPException from fastapi import FastAPI, UploadFile, File, HTTPException
from fastapi.staticfiles import StaticFiles from fastapi.staticfiles import StaticFiles
@@ -56,3 +57,18 @@ async def upload_file(file: UploadFile = File(...)):
"content_type": file.content_type, "content_type": file.content_type,
"size_bytes": target.stat().st_size, "size_bytes": target.stat().st_size,
} }
@app.post("/upload/{file_id}/convert")
async def convert_obj(file_id: str):
inpath = UPLOAD_DIR / Path(file_id)
#check for target
outpath = UPLOAD_DIR / Path(file_id).with_suffix(".obj")
result = subprocess.run(["freecadcmd", "step_to_obj_headless.py", inpath, outpath])
return {
"file_id": file_id,
"inpath": inpath,
"outpath": outpath,
"status": result.__str__()
}