Формат OBJ широко використовується для представлення 3D-моделей, зберігання таких даних, як положення вершин, текстури та нормалі. STL(стереолітографія) — ще один поширений формат 3D-файлу, який переважно використовується для 3D-друку, оскільки він містить лише геометрію поверхні 3D-об’єкта. Перетворення OBJ на STL дозволяє користувачам готувати 3D-моделі для швидкого створення прототипів і 3D-друку.
Переваги перетворення OBJ у STL
-
Формат OBJ: файли OBJ дуже універсальні та містять багату 3D-інформацію, таку як координати, нормалі та текстури. Вони зазвичай використовуються в таких програмах, як Blender, Autodesk та інших, для 3D-рендерінгу.
-
Формат STL: файли STL є кращими для 3D-друку та виробництва. Вони містять геометрію поверхні в простому форматі, що робить їх сумісними майже з усіма 3D-принтерами та програмним забезпеченням САПР.
Однак, конвертувавши OBJ у STL, ви можете легко переходити від детальних 3D-моделей до проектів, готових до друку, таким чином спрощуючи процес 3D-друку та перевірки моделі.
API обробки 3D-моделей
Aspose.3D Cloud SDK пропонує потужний набір інструментів для роботи з 3D-моделями та перетвореннями файлів. За допомогою лише кількох рядків коду C# ви можете завантажити файл OBJ, вказати вихід як STL і без проблем конвертувати файл. Як наслідок, вихідний файл STL оптимізований для 3D-друку та додатків САПР, що робить його ідеальним рішенням для інженерів, дизайнерів і розробників, яким потрібно підготувати 3D-моделі для швидкого створення прототипів.
монтаж
По-перше, нам потрібно знайти Aspose.3D-Cloud
в менеджері пакетів NuGet і натиснути кнопку Додати пакет
. По-друге, отримайте облікові дані клієнта з хмарної інформаційної панелі. Якщо у вас немає облікового запису, просто створіть безкоштовний обліковий запис, дотримуючись інструкцій, наведених у статті швидкий початок.
Перетворення OBJ на STL на C#
У цьому розділі пояснюється простий і ефективний процес перетворення файлів OBJ на STL за допомогою C# .NET
ThreeDCloudApi threeDCloudApi = new ThreeDCloudApi("client_credentials", clientID, clientSecret);
створити екземпляр ThreeDCloudApi, де ми передаємо ідентифікатор клієнта та секрет клієнта як аргументи.
threeDCloudApi.UploadFile(inputFileName, inputStream);
Завантажте вихідний файл OBJ у хмарне сховище.
var response = threeDCloudApi.PostConvertByFormat(inputFileName, "stlascii", newFileName, null, isOverwrite: true, null);
Викличте API, щоб виконати перетворення файлу OBJ у STL.
Під час перетворення API підтримує такі формати файлів STL.
stlascii
абоstlbinary
.
// Для отримання додаткових прикладів відвідайте https://github.com/aspose-3d-cloud/aspose-3d-cloud-dotnet
// Отримайте облікові дані клієнта з https://dashboard.aspose.cloud/
string clientSecret = "XXXXXXXXXXXXXXXX";
string clientID = "XXXXXXXXXXXXX-XXXXXX-4be6-be35-ff5c3a6aa4a2";
// Ім'я вхідного файлу OBJ
String inputFileName = "input.obj";
// отриманий формат файлу STL
String newFormat = "stlascii";
// ім'я отриманого файлу
String newFileName = "myResultant.stl";
// створити екземпляр ThreeDCloud API
ThreeDCloudApi threeDCloudApi = new ThreeDCloudApi("client_credentials", clientID, clientSecret);
try
{
// завантажити вхідний файл OBJ з локального диска
using (var inputStream = new FileStream("C:\\nayyer\\Downloads\\" + inputFileName, FileMode.Open))
{
// завантажити файл OBJ у хмарне сховище
threeDCloudApi.UploadFile(inputFileName, inputStream);
// ініціювати операцію перетворення файлу
var response = threeDCloudApi.PostConvertByFormat(inputFileName, newFormat, newFileName, null, isOverwrite: true, null);
// надрукувати повідомлення про успішне завершення, якщо перетворення виконано успішно
if (response != null && response.Equals("OK"))
{
Console.WriteLine("Wavefront OBJ to STL conversion completed successfully !");
Console.ReadKey();
}
}
}catch (Exception ex)
{
Console.WriteLine("error:" + ex.Message + "\n" + ex.StackTrace);
}
Зразок файлу OBJ, використаний у наведеному вище прикладі, можна завантажити за допомогою GameReady Cottage.obj.
Файл OBJ у STL за допомогою команд cURL
Для тих, хто надає перевагу роботі з командами cURL, Aspose.3D Cloud також підтримує взаємодію REST API. Ось як можна перетворити OBJ на STL за допомогою cURL:
Крок 1: Отримайте маркер доступу
Вам потрібен маркер доступу для автентифікації ваших запитів API. Використовуйте таку команду, щоб отримати свій маркер:
curl -v "https://api.aspose.cloud/connect/token" \
-X POST \
-d "grant_type=client_credentials&client_id=Your-App-SID&client_secret=Your-App-Key" \
-H "Content-Type: application/x-www-form-urlencoded"
Крок 2: Завантажте файл OBJ
Отримавши маркер, завантажте файл OBJ у хмарне сховище Aspose:
curl -v "https://api.aspose.cloud/v3.0/3d/storage/file/sample.obj" \
-X PUT \
-H "Authorization: Bearer your_access_token" \
--data-binary @sample.obj
Крок 3. Перетворіть OBJ на STL
Щоб перетворити файл OBJ на STL, скористайтеся такою командою cURL:
curl -v "https://api.aspose.cloud/v3.0/3d/saveas/newformat?name={sourceFile}&newformat=stlascii&newfilename={convertedFile}&IsOverwrite=false" \
-X POST \
-H "accept: application/json" \
-H "authorization: Bearer {accessToken}"
Замініть sourceFile
на назву вхідного файлу OBJ, resultantFile
на назву результуючого файлу STL і accessToken
на маркер JWT, згенерований вище.
Безкоштовний додаток Wavefront OBJ to STL Converter
Щоб переконатися в дивовижних можливостях Aspose.3D Cloud, ви можете скористатися нашим легким і надефективним додатком для конвертації Wavefront OBJ у STL.
Висновок
Перетворення OBJ на STL є критично важливим процесом для 3D-друку та створення прототипів. Незалежно від того, чи надаєте ви перевагу використанню SDK чи взаємодії з API за допомогою команд cURL, процес є простим і гнучким, що полегшує розробникам роботу зі складними 3D-перетвореннями. Ми рекомендуємо вам дослідити Aspose.3D Cloud і скористатися його потужними функціями для роботи з 3D-файлами.
Корисні посилання
Пов’язана стаття
Ми настійно рекомендуємо відвідати такі посилання, щоб дізнатися більше про: