Відновлення придатності до друку API
Відновіть 3D-модель для придатності до друку — виправте немноговидні ребра, вироджені грані, отвори та інші проблеми topology, щоб сітка була готовою до друку. За бажанням також потовщіть стінки, які є занадто тонкими для розміру, у якому ви плануєте друкувати.
Створити завдання на відновлення придатності до друку
Ця кінцева точка створює нове завдання на відновлення придатності до друку. Завдання виконує відновлення topology 3D-моделі та повертає герметичну, готову до друку версію.
Завдання виконується у фоновому режимі. Про тривалість виконання див. Час обробки.
Вихідний формат відповідає вхідному формату. Якщо ви надсилаєте .stl через model_url, у відповіді поле model_urls.stl міститиме відновлену сітку, а інші поля формату будуть порожніми. Шлях input_task_id завжди зчитує GLB вихідного завдання, тому результат — .glb.
Щоб також потовщити стінки, які занадто тонкі для розміру, в якому ви плануєте друкувати, надішліть printer_type, розмір друку або обидва параметри. Стінки потовщуються лише тоді, коли понад 5% поверхні занадто тонкі для цього принтера. Відновлена модель зберігає свій початковий масштаб; масштабуйте її за допомогою Resize API, який приймає метри (100 мм — це 0.1).
Параметри
Потрібен лише один із параметрів input_task_id або model_url. Якщо надано обидва, пріоритет має input_task_id.
Наявні текстури видаляються під час відновлення через зміни геометрії. Щоб додати текстури назад, використайте Retexture API для відновленої моделі.
- Name
- input_task_id
- Type
- string
- Обов'язковий
- Description
ID успішного завдання, яким ви володієте. Підтримувані типи завдань: Зображення у 3D, Мульти-зображення у 3D, Текст у 3D, Ремеш, Ретекстурування та Аналіз придатності до друку. Завдання повинне мати статус
SUCCEEDEDта мати створений ресурс GLB.Завдання аналізу, яке перевіряло товщину стінки, також передає свій принтер та розмір, тому відновлення перевіряє товщину стінки й потовщує тонкі стінки, навіть якщо ви не надішлете жодного з них;
printer_typeабо розмір друку, надіслані вами, перекривають це значення. Завдання аналізу, створені зmodel_urlу форматі.stl,.fbxабо.gltf, не приймаються: натомість надішліть файл якmodel_url.
- Name
- model_url
- Type
- string
- Обов'язковий
- Description
URL 3D-моделі для відновлення. Підтримувані формати:
.glb,.gltf,.obj,.fbx,.stl. Використовуйте URLhttpабоhttps, або base64data:URL для GLB (data:model/gltf-binary;base64,...) чи glTF (data:model/gltf+json;base64,...). Файли.obj,.fbxта.stlповинні надсилатися як URLhttpабоhttps.Максимальний розмір файлу: 400 МБ для URL
httpабоhttps, 100 МБ дляdata:URI.Файл GLB, glTF, FBX або OBJ розміром понад 100 МБ може містити щонайбільше 10 000 000 граней. Грані підраховуються як трикутники: квад рахується як 2, а сітка, намальована більше одного разу, рахується один раз на кожну копію. Для файлів понад 100 МБ, FBX-файл повинен бути бінарним FBX 7.1 або новішим, а GLB або glTF файл не повинен використовувати стиснення Draco.
URL-адреси завантаження Meshy (
assets.meshy.ai/…?Expires=…&Signature=…) є підписаними і перестають працювати післяexpires_atзавдання; повторне отримання завдання не оновлює їх. Для моделі, згенерованої за допомогою Meshy, натомість передайтеinput_task_id. Це працює, доки вихідне завдання зберігається (див. Зберігання ресурсів). Щоб повторно використати модель після цього, завантажте її до настанняexpires_atі надішліть власну копію.
- Name
- alpha_thumbnail
- Type
- boolean
- за замовчуванням false
- Description
Якщо встановлено значення
true, завдання додатково рендерить версію попереднього перегляду з прозорим фоном (RGBA) та повертає її якalpha_thumbnail_urlу відповіді GET. Наявне полеthumbnail_urlзалишається без змін.
Надсилайте щонайбільше одне з двох полів розміру друку. Якщо ви надсилаєте printer_type без розміру, і жоден розмір не повторно використовується із завдання аналізу, розмір за замовчуванням становить:
.glbта будь-якийinput_task_id: висота 150 мм..stl: власна найдовша сторона файлу, зчитана в міліметрах. Для STL в інших одиницях вимірювання надішлітьintended_print_longest_side_mm..obj,.fbx,.gltf: 150 мм на найдовшій стороні.
- Name
- printer_type
- Type
- string
- Description
Принтер, який ви плануєте використовувати. Він встановлює мінімальну товщину стінки, до якої прагне відновлення. За замовчуванням —
fdm, коли ви надсилаєте розмір друку без нього, якщо тільки завдання аналізу, передане якinput_task_id, не надає принтер.Доступні значення:
fdm: філамент, мінімальна товщина стінки 1.0 мм.sla: смола, мінімальна товщина стінки 0.8 мм.full_color: повнокольоровий, мінімальна товщина стінки 2.0 мм.
- Name
- intended_print_height_mm
- Type
- number
- Description
Висота друку в міліметрах. Діапазон:
[1, 1000]. Округлюється до найближчого міліметра. Лише для вхідних даних GLB.
- Name
- intended_print_longest_side_mm
- Type
- number
- Description
Довжина найдовшої сторони друку в міліметрах. Діапазон:
[1, 1000]. Округлюється до найближчого міліметра. Працює з усіма вхідними форматами.
Повертає
Властивість result відповіді містить id щойно створеного завдання на відновлення придатності до друку.
Режими відмов
- Name
400 - Bad Request- Description
Запит був неприйнятним. Поширені причини:
- Відсутній параметр: не надано ні
input_task_id, ніmodel_url. - Недійсний UUID:
input_task_idне є дійсним UUID. - Недійсний URL моделі:
model_urlмає неправильний формат, використовує непідтримувану схему або має непідтримуване розширення файлу. - Файл моделі занадто великий: тіло
model_urlперевищило 400 МБ (URLhttpабоhttps) або 100 МБ (data:URI). - Забагато граней:
model_url— це файл GLB, glTF, FBX або OBJ розміром понад 100 МБ з більш ніж 10 000 000 гранями. Зменшіть кількість граней, а потім надішліть файл знову. - ASCII FBX понад 100 МБ:
model_url— це ASCII FBX понад 100 МБ. Надішліть його як бінарний FBX або GLB. - Нечитабельний файл моделі:
model_urlперевищує 100 МБ, і його заголовок не вдається прочитати, наприклад, GLB або glTF, стиснутий Draco, або бінарний FBX старіший за 7.1. - Заголовок моделі занадто складний:
model_urlперевищує 100 МБ, і його заголовок містить забагато сіток, вузлів або записів для перевірки. Зменшіть кількість об'єктів у файлі, а потім надішліть його знову. - Не вдалося завантажити файл моделі:
model_urlповернув помилку, найчастіше через те, що підписаний URL завантаження Meshy закінчився. Повторне отримання завдання повертає той самий URL з тим самим терміном дії, тож надішліть власну копію файлу або використайтеinput_task_id, доки вихідне завдання все ще зберігається. - Завдання не завершено успішно: завдання, на яке посилаються, все ще очікує, виконується або завершилося невдало.
- Відсутній GLB: завдання, на яке посилаються, не має ресурсу GLB для відновлення.
- Недійсний розмір друку:
intended_print_height_mmабоintended_print_longest_side_mmвиходить за межі[1, 1000], або обидва були надіслані. - Невідомий тип принтера:
printer_typeне єfdm,slaабоfull_color. - Висота для не-GLB моделі:
intended_print_height_mmбуло надіслано зmodel_url, який не є.glb. Натомість використовуйтеintended_print_longest_side_mm. - Неможливо визначити розмір цієї моделі за висотою: при запитуваній висоті (або висоті за замовчуванням 150 мм) найдовша сторона моделі виходила б за межі
[1, 1000]мм, модель плоска, або її розмір неможливо визначити. Натомість використовуйтеintended_print_longest_side_mm. Дляmodel_urlформату.glbта деяких завданьinput_task_idце виявляється лише після того, як завдання починається, і завдання завершується зі статусомFAILEDзамість цього. - Розмір STL непридатний для використання:
printer_typeбуло надіслано без розміру, і власну найдовшу сторону.stlнеможливо прочитати, або вона виходить за межі[1, 1000]мм. Надішлітьintended_print_longest_side_mm.
- Відсутній параметр: не надано ні
- Name
401 - Unauthorized- Description
Помилка автентифікації. Будь ласка, перевірте свій API-ключ.
- Name
402 - Payment Required- Description
Поширені причини:
- Безкоштовний план: для створення завдання потрібен платний план. Оновіть план на сторінці підписки.
- Недостатньо кредитів: досягнуто ліміту кредитів робочої області.
- Name
404 - Not Found- Description
Завдання, на яке посилаються, не існує або належить іншому користувачу.
- Name
429 - Too Many Requests- Description
Ви перевищили квоту очікуваних завдань або обмеження частоти.
Request
# Repair an existing task
curl https://api.meshy.ai/openapi/v1/print/repair \
-X POST \
-H "Authorization: Bearer ${YOUR_API_KEY}" \
-H 'Content-Type: application/json' \
-d '{
"input_task_id": "018a210d-8ba4-705c-b111-1f1776f7f578"
}'
# Or repair a model URL directly
curl https://api.meshy.ai/openapi/v1/print/repair \
-X POST \
-H "Authorization: Bearer ${YOUR_API_KEY}" \
-H 'Content-Type: application/json' \
-d '{
"model_url": "https://example.com/model.stl"
}'
# Also thicken walls that are too thin for a 100 mm tall SLA print
curl https://api.meshy.ai/openapi/v1/print/repair \
-X POST \
-H "Authorization: Bearer ${YOUR_API_KEY}" \
-H 'Content-Type: application/json' \
-d '{
"input_task_id": "018a210d-8ba4-705c-b111-1f1776f7f578",
"printer_type": "sla",
"intended_print_height_mm": 100
}'
Response
{
"result": "0193bfc5-ee4f-73f8-8525-44b398884ce9"
}
Отримати завдання відновлення придатності до друку
Ця кінцева точка отримує завдання відновлення придатності до друку за його ID.
Параметри
- Name
- id
- Type
- path
- Description
ID завдання відновлення придатності до друку, яке потрібно отримати.
Повертає
Об'єкт завдання відновлення придатності до друку. Блок model_urls порожній, доки завдання не досягне статусу SUCCEEDED. Заповнюється лише те поле model_urls, яке відповідає вхідному формату. Відновлення товщини стінки з самого початку включає intended_print, а після успішного завершення завдання — print_repair_report.
Request
curl https://api.meshy.ai/openapi/v1/print/repair/a43b5c6d-7e8f-901a-234b-567c890d1e2f \
-H "Authorization: Bearer ${YOUR_API_KEY}"
Response
{
"id": "0193bfc5-ee4f-73f8-8525-44b398884ce9",
"type": "print-repair",
"status": "SUCCEEDED",
"progress": 100,
"created_at": 1699999999000,
"started_at": 1700000000000,
"finished_at": 1700000030000,
"expires_at": 1715725401000,
"task_error": null,
"model_urls": {
"glb": "",
"gltf": "",
"fbx": "",
"obj": "",
"stl": "https://assets.meshy.ai/***/tasks/0193bfc5-ee4f-73f8-8525-44b398884ce9/output/model.stl?Expires=***",
"usdz": "",
"3mf": "",
"mtl": ""
},
"thumbnail_url": "https://assets.meshy.ai/***/tasks/0193bfc5-ee4f-73f8-8525-44b398884ce9/output/preview.png?Expires=***",
"texture_urls": [],
"consumed_credits": 10
}
Response (wall thickness checked)
{
"id": "0193bfc5-ee4f-73f8-8525-44b398884ce9",
"type": "print-repair",
"status": "SUCCEEDED",
"progress": 100,
"created_at": 1699999999000,
"started_at": 1700000000000,
"finished_at": 1700000090000,
"expires_at": 1715725490000,
"task_error": null,
"model_urls": {
"glb": "https://assets.meshy.ai/***/tasks/0193bfc5-ee4f-73f8-8525-44b398884ce9/output/model.glb?Expires=***",
"gltf": "",
"fbx": "",
"obj": "",
"stl": "",
"usdz": "",
"3mf": "",
"mtl": ""
},
"thumbnail_url": "https://assets.meshy.ai/***/tasks/0193bfc5-ee4f-73f8-8525-44b398884ce9/output/preview.png?Expires=***",
"texture_urls": [],
"consumed_credits": 10,
"intended_print": {
"printer_type": "sla",
"height_mm": 100,
"longest_side_mm": 118,
"wall_thickness_mm": 0.8,
"dimensions_mm": [118, 72.41, 99.87]
},
"print_repair_report": {
"route": "thin_wall",
"applied": true,
"faces_before": 243112,
"faces_after": 251870,
"thin_area_ratio_before": 0.083,
"thin_area_ratio_after": 0.004
}
}
Видалення завдання відновлення придатності до друку
Ця кінцева точка остаточно видаляє завдання відновлення придатності до друку та його відновлений результат. Ця дія незворотна.
Параметри шляху
- Name
- id
- Type
- path
- Description
Ідентифікатор завдання відновлення придатності до друку, яке потрібно видалити.
Статус завдання
Завдання, яке все ще перебуває у статусі PENDING, видаляється, а кредити,
витрачені під час створення, повертаються.
Завдання, яке вже перебуває у статусі IN_PROGRESS, видалити неможливо: запит
відхиляється з помилкою 409 Conflict, а завдання продовжує виконуватися. Кредити за
завдання, яке вже почав обробляти воркер, не підлягають поверненню, тому видалення
його під час виконання коштуватиме вам і кредитів, і результату. Дочекайтеся, поки
воно досягне статусу SUCCEEDED, FAILED або CANCELED, а потім видаліть його.
Завдання у кінцевому статусі (SUCCEEDED, FAILED або CANCELED) видаляється
без повернення коштів.
Повертає
Повертає 200 OK у разі успіху або 409 Conflict, якщо завдання має статус
IN_PROGRESS.
Request
curl --request DELETE \
--url https://api.meshy.ai/openapi/v1/print/repair/a43b5c6d-7e8f-901a-234b-567c890d1e2f \
-H "Authorization: Bearer ${YOUR_API_KEY}"
Response
// 200 OK on success, with an empty body.
//
// 409 Conflict when the task is IN_PROGRESS — the task is left running:
{
"message": "Task is IN_PROGRESS and cannot be deleted. Credits for a task the worker has already started are not refundable; wait for it to reach SUCCEEDED, FAILED or CANCELED, then delete it."
}
Список завдань Відновлення придатності до друку
Ця кінцева точка дозволяє отримати список завдань на відновлення придатності до друку.
Параметри
Необов'язкові атрибути
- Name
- page_num
- Type
- integer
- Description
Номер сторінки для пагінації. Починається і за замовчуванням дорівнює
1.
- Name
- page_size
- Type
- integer
- Description
Обмеження розміру сторінки. За замовчуванням
10елементів. Максимально дозволено100елементів.
- Name
- sort_by
- Type
- string
- Description
Поле для сортування. Доступні значення:
+created_at: Сортувати за часом створення у порядку зростання.-created_at: Сортувати за часом створення у порядку спадання.
Повертає
Повертає пагінований список об'єктів завдання Відновлення придатності до друку.
Request
curl https://api.meshy.ai/openapi/v1/print/repair?page_size=10 \
-H "Authorization: Bearer ${YOUR_API_KEY}"
Response
[
{
"id": "0193bfc5-ee4f-73f8-8525-44b398884ce9",
"type": "print-repair",
"status": "SUCCEEDED",
"progress": 100,
"preceding_tasks": 0,
"created_at": 1699999999000,
"started_at": 1700000000000,
"finished_at": 1700000030000,
"expires_at": 1715725401000,
"task_error": null,
"model_urls": {
"glb": "https://assets.meshy.ai/***/tasks/0193bfc5-ee4f-73f8-8525-44b398884ce9/output/model.glb?Expires=***",
"gltf": "",
"fbx": "",
"obj": "",
"stl": "",
"usdz": "",
"3mf": "",
"mtl": ""
},
"thumbnail_url": "https://assets.meshy.ai/***/tasks/0193bfc5-ee4f-73f8-8525-44b398884ce9/output/preview.png?Expires=***",
"texture_urls": [],
"consumed_credits": 10
}
]
Stream a Repair Printability Task
Ця кінцева точка передає оновлення в реальному часі для завдання відновлення придатності до друку за допомогою Server-Sent Events (SSE).
Параметри
- Name
- id
- Type
- path
- Description
Унікальний ідентифікатор завдання відновлення придатності до друку для потокової передачі.
Повертає
Повертає потік об'єктів завдання відновлення придатності до друку у форматі Server-Sent Events.
Кожен кадр містить повний об'єкт завдання для цього етапу — таку ж форму,
яку повертає кінцева точка Get — тому поки завдання має статус PENDING або IN_PROGRESS,
вихідні поля просто ще не заповнені (null, [] або {}), а
finished_at дорівнює null. Блок model_urls надсилається лише тоді, коли завдання досягає статусу SUCCEEDED.
Request
curl -N https://api.meshy.ai/openapi/v1/print/repair/a43b5c6d-7e8f-901a-234b-567c890d1e2f/stream \
-H "Authorization: Bearer ${YOUR_API_KEY}"
Response Stream
// Error event example
event: error
data: {
"status_code": 404,
"message": "Task not found"
}
// Message event examples illustrate task progress.
// Every frame is the full task object; fields not yet populated are null / empty.
// The PENDING frame below is abbreviated to the fields that change.
event: message
data: {
"id": "a43b5c6d-7e8f-901a-234b-567c890d1e2f",
"progress": 0,
"status": "PENDING"
}
event: message
data: {
"id": "a43b5c6d-7e8f-901a-234b-567c890d1e2f",
"type": "print-repair",
"status": "SUCCEEDED",
"progress": 100,
"preceding_tasks": 0,
"created_at": 1699999999000,
"started_at": 1700000000000,
"finished_at": 1700000030000,
"expires_at": 1715725401000,
"task_error": null,
"model_urls": {
"glb": "https://assets.meshy.ai/***/tasks/a43b5c6d-7e8f-901a-234b-567c890d1e2f/output/model.glb?Expires=***",
"gltf": "",
"fbx": "",
"obj": "",
"stl": "",
"usdz": "",
"3mf": "",
"mtl": ""
},
"thumbnail_url": "https://assets.meshy.ai/***/tasks/a43b5c6d-7e8f-901a-234b-567c890d1e2f/output/preview.png?Expires=***",
"texture_urls": [],
"consumed_credits": 10
}
Об'єкт завдання Repair Printability
- Name
- id
- Type
- string
- Description
Унікальний ідентифікатор завдання. Хоча ми використовуємо k-сортований UUID для ідентифікаторів завдань як деталь реалізації, вам не слід робити жодних припущень щодо формату id.
- Name
- type
- Type
- string
- Description
Тип завдання відновлення придатності до друку. Значення —
print-repair.
- Name
- status
- Type
- string
- Description
Статус завдання. Можливі значення: одне з
PENDING,IN_PROGRESS,SUCCEEDED,FAILED,CANCELED.
- Name
- progress
- Type
- integer
- Description
Прогрес виконання завдання. Якщо завдання ще не розпочато, це значення дорівнює
0. Коли завдання успішно завершено, значення стане100.
- Name
- preceding_tasks
- Type
- integer
- Description
Кількість попередніх завдань.
Значення цього поля має сенс лише якщо статус завдання
PENDING.
- Name
- created_at
- Type
- timestamp
- Description
Мітка часу створення завдання, у мілісекундах.
- Name
- started_at
- Type
- timestamp
- Description
Мітка часу початку виконання завдання, у мілісекундах. Якщо завдання ще не розпочато, це значення дорівнює
0.
- Name
- finished_at
- Type
- timestamp
- Description
Мітка часу завершення завдання, у мілісекундах. Якщо завдання ще не завершено, це значення дорівнює
0.
- Name
- expires_at
- Type
- timestamp
- Description
Мітка часу, коли результат завдання буде видалено із системи, у мілісекундах.
0, якщо завдання ще не завершено.
- Name
- task_error
- Type
- object
- Description
Інформація про помилку, якщо завдання завершилося невдало. Це значення
null, якщо завдання не завершилося невдало. Див. Помилки для додаткової інформації.- Name
message- Type
- string
- Description
Повідомлення про помилку, що описує, що пішло не так.
- Name
- model_urls
- Type
- object
- Description
URL-адреси для завантаження відновленої 3D-моделі. Заповнюється лише те поле, що відповідає формату введення; інші поля формату залишаються порожніми рядками.
- Name
glb- Type
- string
- Description
URL-адреса для завантаження відновленого GLB. Заповнюється, якщо на вхід подавався GLB або якщо використовувався
input_task_id.
- Name
gltf- Type
- string
- Description
URL-адреса для завантаження відновленого GLTF. Заповнюється, якщо на вхід завантажувався GLTF.
- Name
fbx- Type
- string
- Description
URL-адреса для завантаження відновленого FBX. Заповнюється, якщо на вхід завантажувався FBX.
- Name
obj- Type
- string
- Description
URL-адреса для завантаження відновленого OBJ. Заповнюється, якщо на вхід завантажувався OBJ.
- Name
stl- Type
- string
- Description
URL-адреса для завантаження відновленого STL. Заповнюється, якщо на вхід завантажувався STL.
- Name
usdz- Type
- string
- Description
Зарезервовано для виведення USDZ. Завжди порожній рядок для завдань відновлення придатності до друку.
- Name
3mf- Type
- string
- Description
Зарезервовано для виведення 3MF. Завжди порожній рядок для завдань відновлення придатності до друку.
- Name
mtl- Type
- string
- Description
Зарезервовано для виведення MTL. Завжди порожній рядок для завдань відновлення придатності до друку.
- Name
- thumbnail_url
- Type
- string
- Description
URL-адреса зображення попереднього перегляду, відрендереного з відновленої моделі.
- Name
- alpha_thumbnail_url
- Type
- string
- Description
URL-адреса для завантаження версії
thumbnail_urlіз прозорим фоном (RGBA). Присутнє лише тоді, коли завдання було створено зalpha_thumbnail: trueі прозорий попередній перегляд було успішно відрендерено; інакше це поле відсутнє.
- Name
- texture_urls
- Type
- array
- Description
Завжди порожній масив. Відновлення зберігає лише вхідну геометрію й не перезапікає текстури.
- Name
- consumed_credits
- Type
- integer
- Description
Кількість кредитів, витрачених на це завдання.
10, щойно завдання досягне статусуSUCCEEDED. Повертає0для завдань зі статусомFAILED(кредити повертаються у разі невдачі).
- Name
- intended_print
- Type
- object
- Description
Принтер і розмір, які використовувались для відновлення, незалежно від того, чи були вони надіслані, чи повторно використані із завдання аналізу. Присутнє для відновлення товщини стінки від самого початку (
PENDING); значення, які ще не відомі, мають значенняnull.- Name
printer_type- Type
- string
- Description
fdm,slaабоfull_color.
- Name
height_mm- Type
- number
- Description
Висота друку в міліметрах, якщо розмір друку визначався за висотою. Інакше
null.
- Name
longest_side_mm- Type
- number
- Description
Найдовша сторона друку в міліметрах. Якщо розмір визначався за висотою, це значення обчислюється на основі пропорцій моделі та дорівнює
null, доки модель не буде виміряно.
- Name
wall_thickness_mm- Type
- number
- Description
Мінімальна товщина стінки для
printer_type, у міліметрах.
- Name
dimensions_mm- Type
- array
- Description
Значення
[ширина, глибина, висота]друку в міліметрах. Висота може відрізнятись відheight_mmна частку міліметра.null, доки завдання не завершиться успішно, і завждиnullдля вхідних даних не у форматі GLB.
- Name
- print_repair_report
- Type
- object
- Description
Що саме зробило відновлення товщини стінки. Присутнє, коли відновлення товщини стінки успішно завершено.
- Name
route- Type
- string
- Description
Який тип відновлення було виконано. Одне з:
thin_wall: понад 5% поверхні було занадто тонким, тому також було виконано потовщення стінки (див.applied).topology: стінки були достатньо товстими; виконано лише відновлення topology.topology_unmeasured: стінки не вдалося виміряти; виконано лише відновлення topology.
- Name
applied- Type
- boolean
- Description
Чи змінило потовщення стінки сітку. Присутнє лише тоді, коли
routeдорівнюєthin_wall.
- Name
faces_before- Type
- integer
- Description
Кількість граней вхідної сітки. Присутнє лише тоді, коли
routeдорівнюєthin_wall.
- Name
faces_after- Type
- integer
- Description
Кількість граней відновленої сітки. Присутнє лише тоді, коли
routeдорівнюєthin_wall.
- Name
thin_area_ratio_before- Type
- number
- Description
Частка поверхні вхідних даних, від
0до1, яка була тоншою заintended_print.wall_thickness_mm. Пропускається, якщо вхідні дані не вдалося виміряти.
- Name
thin_area_ratio_after- Type
- number
- Description
Та сама частка, виміряна на відновленій моделі. Пропускається, якщо не вдалося виміряти; завдання все одно завершується успішно.
The Repair Printability Task Object
{
"id": "0193bfc5-ee4f-73f8-8525-44b398884ce9",
"type": "print-repair",
"status": "SUCCEEDED",
"progress": 100,
"preceding_tasks": 0,
"created_at": 1699999999000,
"started_at": 1700000000000,
"finished_at": 1700000030000,
"expires_at": 1715725401000,
"task_error": null,
"model_urls": {
"glb": "https://assets.meshy.ai/***/tasks/0193bfc5-ee4f-73f8-8525-44b398884ce9/output/model.glb?Expires=***",
"gltf": "",
"fbx": "",
"obj": "",
"stl": "",
"usdz": "",
"3mf": "",
"mtl": ""
},
"thumbnail_url": "https://assets.meshy.ai/***/tasks/0193bfc5-ee4f-73f8-8525-44b398884ce9/output/preview.png?Expires=***",
"texture_urls": [],
"consumed_credits": 10
}
The Repair Printability Task Object (wall thickness checked)
{
"id": "0193bfc5-ee4f-73f8-8525-44b398884ce9",
"type": "print-repair",
"status": "SUCCEEDED",
"progress": 100,
"preceding_tasks": 0,
"created_at": 1699999999000,
"started_at": 1700000000000,
"finished_at": 1700000090000,
"expires_at": 1715725490000,
"task_error": null,
"model_urls": {
"glb": "https://assets.meshy.ai/***/tasks/0193bfc5-ee4f-73f8-8525-44b398884ce9/output/model.glb?Expires=***",
"gltf": "",
"fbx": "",
"obj": "",
"stl": "",
"usdz": "",
"3mf": "",
"mtl": ""
},
"thumbnail_url": "https://assets.meshy.ai/***/tasks/0193bfc5-ee4f-73f8-8525-44b398884ce9/output/preview.png?Expires=***",
"texture_urls": [],
"consumed_credits": 10,
"intended_print": {
"printer_type": "sla",
"height_mm": 100,
"longest_side_mm": 118,
"wall_thickness_mm": 0.8,
"dimensions_mm": [118, 72.41, 99.87]
},
"print_repair_report": {
"route": "thin_wall",
"applied": true,
"faces_before": 243112,
"faces_after": 251870,
"thin_area_ratio_before": 0.083,
"thin_area_ratio_after": 0.004
}
}