فایل OBJ محصول نهایی فرآیند مدلسازی سه بعدی است که معمولاً توسط نرمافزار CAD تولید میشود. این یک فایل تعریف هندسه است که حاوی راس، نرمال های راس، رئوس و غیره است. در موارد خاص، ممکن است نیاز داشته باشیم که یک فایل OBJ را به فرمت STL تبدیل کنیم. فایل STL حاوی اطلاعاتی در مورد گرافیک های وکتور سه بعدی است. در این مقاله با نحوه تبدیل فایل OBJ به فرمت STL در پایتون آشنا می شویم.
این مقاله باید موضوعات زیر را پوشش دهد:
- تبدیل Python OBJ به STL – دانلود رایگان
- مراحل تبدیل OBJ به STL
- تبدیل فایل OBJ به STL
- [تبدیل OBJ به STL با گزینههایی در پایتون6
مبدل Python OBJ به STL – دانلود رایگان
برای تبدیل OBJ به STL، از API Aspose.3D for Python استفاده خواهیم کرد. این امکان تبدیل [فرمت های فایل سه بعدی] مختلف را فراهم می کند. API همچنین از کار با هندسه و سلسله مراتب صحنه و متحرک سازی اشیاء در یک صحنه سه بعدی پشتیبانی می کند.
کلاس Scene API یک شی سطح بالا است که شامل گره ها، هندسه ها، مواد، بافت ها، انیمیشن ها، ژست ها، صحنه های فرعی و غیره است. روش fromfile(string) این کلاس صحنه را از یک مسیر فایل مشخص باز می کند. همچنین متد save(string, SaveOptions) را فراهم می کند که صحنه را در مسیر مشخص شده ذخیره می کند. کلاس StlSaveOptions API امکان تعیین گزینه های ذخیره را برای قالب STL می دهد.
لطفاً یا پکیج را دانلود کنید یا API را از PyPI با استفاده از دستور pip زیر در کنسول نصب کنید:
pip install aspose-3d
نحوه تبدیل OBJ به STL
با دنبال کردن مراحل زیر می توانیم به راحتی یک فایل OBJ را به فرمت STL تبدیل کنیم:
- یک فایل OBJ را بارگیری کنید.
- گزینه های ذخیره STL را مشخص کنید.
- OBJ را به عنوان STL ذخیره کنید.
در بخش زیر نحوه تبدیل این مراحل به کد پایتون و تبدیل فایل OBJ به فرمت STL توضیح داده شده است.
OBJ را با استفاده از پایتون به STL تبدیل کنید
با دنبال کردن مراحل زیر می توانیم یک فایل OBJ را به فرمت STL تبدیل کنیم:
- ابتدا یک فایل OBJ ورودی را با استفاده از متد ()Scene.fromfile بارگذاری کنید.
- پس از آن، یک نمونه از کلاس StlSaveOptions ایجاد کنید.
- در نهایت متد save() را فراخوانی کنید تا به عنوان STL ذخیره شود. مسیر فایل خروجی STL و StlSaveOptions را به عنوان آرگومان می گیرد.
نمونه کد زیر نحوه تبدیل OBJ به STL در پایتون را نشان می دهد.
# این مثال کد نحوه تبدیل OBJ به STL را نشان می دهد.
# فایل OBJ ورودی را با کلاس Scene بارگیری کنید.
scene = Scene.from_file("C:\\Files\\3D\\sample.obj");
# شی کلاس STLSaveOptions را راه اندازی کنید.
stlSaveOptions = StlSaveOptions();
# تبدیل فایل OBJ به STL
scene.save("C:\\Files\\3D\\sample_out.stl", stlSaveOptions);
تبدیل OBJ به STL با گزینه هایی در پایتون
ما میتوانیم گزینههای ذخیره STL را هنگام تبدیل یک فایل OBJ به فرمت STL با دنبال کردن مراحل زیر مشخص کنیم:
- ابتدا یک فایل OBJ ورودی را با استفاده از متد ()Scene.fromfile بارگذاری کنید.
- سپس یک نمونه از کلاس StlSaveOptions ایجاد کنید.
- پس از آن، گزینه های ذخیره STL مانند flipcoordinatessystem، مسیرهای جستجو و غیره را مشخص کنید.
- در نهایت متد save() را فراخوانی کنید تا به عنوان STL ذخیره شود. مسیر فایل خروجی STL و StlSaveOptions را به عنوان آرگومان می گیرد.
نمونه کد زیر نحوه تبدیل OBJ به STL را با گزینه های ذخیره STL در پایتون نشان می دهد.
# این مثال کد نحوه تبدیل OBJ به STL را با گزینه های ذخیره نشان می دهد.
# فایل OBJ ورودی را با کلاس Scene بارگیری کنید.
scene = Scene.from_file("C:\\Files\\3D\\sample.obj");
# شی کلاس STLSaveOptions را راه اندازی کنید.
stlSaveOptions = StlSaveOptions();
# سیستم مختصات را برگردانید.
stlSaveOptions.flip_coordinate_system = True
# مسیرهای جستجو را پیکربندی کنید تا واردکننده بتواند وابستگی های خارجی را پیدا کند.
dataDir = "C:\\Files\\3D\\"
paths = [ dataDir]
stlSaveOptions.lookup_paths = repr(paths)
# تبدیل فایل OBJ به STL
scene.save("C:\\Files\\3D\\sample_out.stl", stlSaveOptions);
مجوز موقت رایگان دریافت کنید
برای امتحان Aspose.3D برای Python بدون محدودیت ارزیابی، میتوانید یک مجوز موقت رایگان دریافت کنید.
آنلاین را امتحان کنید
لطفاً ابزار آنلاین رایگان تبدیل OBJ به STL زیر را که با استفاده از API فوق توسعه یافته است، امتحان کنید.
https://products.aspose.app/3d/conversion/obj-to-stl
نتیجه
در این مقاله یاد گرفتیم که چگونه OBJ را با استفاده از پایتون به STL تبدیل کنیم. ما همچنین نحوه تعیین گزینه های ذخیره STL مختلف را به صورت برنامه ای دیدیم. علاوه بر این، میتوانید درباره Aspose.3D for Python API با استفاده از documentation اطلاعات بیشتری کسب کنید. در صورت وجود هرگونه ابهامی، لطفاً با ما در [تالار گفتمان پشتیبانی رایگان18 تماس بگیرید.