نماد سایت 3D Printer | پرینتر سه بعدی

فرمت فایل obj پرینتر سه بعدی چیست؟

یادگیری پرینتر سه بعدی

فرمت فایل obj یکی از مهمترین فرمتها در حوزه اپلیکیشنهای گرافیک سه بعدی و پرینترهای سه بعدی محسوب میشود. همچنین فرمت «او بی جِی» برای پرینترهای سه بعدی رنگی که به تازگی در کشورهای صنعتی به فروش میرسند، فرمت پیش فرض میباشد.  این فرمت در نرم افزارهای سه بعدی سازی و پلتفرمهای غیرانیمیشنی حوزه گرافیک محبوبیت بالایی دارد. در این مقاله، درباره کاربرد این فرمت برای پرینتر سه بعدی تکنولوژی متریال فیلامنت (FDM)  و تفاوت های این فرمت نسبت به فرمتهای رایج همانند STL توضیحاتی خواهیم داد.

نام کامل این فرمت Wavefront OBJect میباشد. البته هیچ کس به خود زحمت استفاده از نام کامل آنرا نداده و به همان obj بسنده میکنند! فرمت فایل obj توسط کمپانی حوزه گرافیک با نام Wavefront Technologies توسعه یافته است. هدف این کمپانی ارائه فرمتی کامپیوتری قابل استفاده در اپلیکیشنهای بصری پیشرفته بود تا قادر باشند اشیاء هندسی شامل خطوط ساده، ‌چندضلعی و فرمهای آزاد منحنی و مسطح را پردازش نمایند. تا زمان نگارش این مقاله، آخرین ورژن فرمت «او  بی جِی» نسخه v3.0 میباشد.

به طور کلی، فرمت «او بی جِی» برای ذخیره سازی داده های مدل سه بعدی ایجاد گشته است. این فرمت سطح هندسی یک مدل سه بعدی را اصطلاحا encode (کدگذاری) کرده و قادر است رنگ و بافت را نیز ساپورت نماید. توجه کنید که این فرمت نمی تواند داده های صحنه پردازی مثل موقعیت افکتهای نوری یا انیمیشن را ذخیره کند.

فرمت فایل OBJ به طور معمول توسط نرم افزارهای CAD: Computer Aided Design به عنوان محصول نهایی مدل سه بعدی خروجی گرفته میشود. پسوند ضمیمه برای این فایل به همان نام obj در کامپیوتر ساخته میشود.

این فرمت یک پسوند متن باز (open source) محسوب شده و به شدت برای اشتراک مدل سه بعدی در سطح اینترنت یا پلتفرمهای گرافیکی استفاده میگردد،  زیرا خاصیت اکسپورت و ایمپورت در اغلب نرم افزارهای cad را به خوبی پشتیبانی میکند. همچنین در سالهای اخیر این فرمت به عنوان فایل پیش فرض پرینترهای سه بعدی رنگی محبوبیت بالایی یافته است (زیرا فرمت STL از رنگها و بافت پشتیبانی نمیکند).

مسلما کاربردی ترین فرمت برای پرینترهای سه بعدی همان فرمت محبوب STL میباشد. این فرمت بیشتر برای پرینترهای سه بعدی FDM یا DLP کاربرد داشته و به نوعی پیشکسوت محسوب میشود. البته این فرمت با برخی تکنولوژی های دیگر چاپگر سه بعدی سازگاری چندانی ندارد چون از رنگ و بافت پشتیبانی نکرده و در رزولوشنهای بسیار بالا نیز حجم فایل افزایش زیادی می یابد.

در مقایسه، فرمت OBJ میتواند رزولوشنهای بسیار بالا را بدون افزایش چندان حجم فایل پشتیبانی نماید. این فرمت از تکنیکهای Bezier curves و NURBS بهره میبرد. همچنین این فرمت به صورت ذاتی از رنگها و بافت در مدل سه بعدی پشتیبانی مینماید. پس در صورتی که مدلهای حجیم  و با دقت بسیار بالا دارید، از فرمت obj بهره ببرید.

فراموش نکنید، فرمت STL بسیار رایجتر از obj است و حتی برخی پرینترهای سه بعدی نیز به صورت پیش فرض از STL پشتیبانی میکنند. بنابراین برای چاپگرهای سه بعدی متریال فیلامنت در صورتی که خیلی مدل سه بعدی حجیمی ندارید، همان STL کافیست. فراموش نکنید که هر دو فرمت obj و stl اکوسیستم تکامل یافته ای داشته و سرمایه گذاری و جامعه پشتیبانی بزرگی در پشت سر آنها قرار دارد.

نکته: دیگر فرمتهای پرینتر سه بعدی عبارتند از:‌ VRML, AMF, 3MF،  STEP که نسبت به دو فرمت فوق محبوبیت بسیار کمتری دارند و با برخی نرم افزارهای پرینتر سه بعدی نیز سازگاری چندانی ندارند.

هندسه (GEOMETRY):

ذات فرمت فایل «او بی جِی» کدگذاری سطح هندسی شی سه بعدی است. پس در این حوزه بسیار کاربردپذیر می باشد؛ این فرمت به شما اجازه انتخاب سه  مدل encoding سطوح هندسی را میدهد که در زیر توضیح میدهیم:

  1. حالت موزاییکی سطوح چندضلعی (TESSELLATION WITH POLYGONAL FACES):

در ساده ترین حالت، فرمت obj امکان موزاییکی کردن سطح مدل سه بعدی با حجمهایی مثل مثلث، چهارضلعی یا چندضلعی پیچیده را فراهم میکند. در عکس زیر سطح مدل سه بعدی  موزاییک مثلثی شده است.

یادگیری پرینتر سه بعدی

حالت موزاییکی چندضلعی مزایا و معایب خود را دارد؛ چون چندضلعی هر چقدر هم پیچیده باشد در کل ساختار ساده ای داشته و آسانترین روش برای ترسیم سطوح هندسی می باشد. بنابراین مدلسازی سطوح منحنی (قوسهای ظریف) با چندضلعی، زمخت شدن مدل چندان بعید نیست.

برخی افراد حرفه ای ساختار مثلثی را به جای چندضلعی استفاده میکنند زیرا میتوان با ریزتر کردن و افزایش تعداد مثلثها دقت و ظرافت قوسها را حفظ کرد؛ اگرچه هر چه تعداد ساختارهای مثلثی افزایش یابد، فایل obj سنگینتری خواهید داشت که ممکن است پرینتر سه بعدی شما نتواند آنرا هندل کند و با خطا مواجه شوید (از مشکل اشتراک گذاری در اینترنت یا ارسال فایل به دیگران نیز میگذریم). پس با توجه به ساختار مدل سه بعدی، بهترین حالت را انتخاب کنید.

نکته: توجه کنید تغییر ساختار انکودینگ برای افراد حرفه ایست و اگر تازه کار هستید تنظیمات پیش فرض این فرمت فایل را بپذیرید.

  1. سطوح آزاد منحنی (FREE-FORM CURVES):

فرمت obj ساختار هندسی قوس با فرمهای آزاد و پیچیده را پشتیبانی میکند (Cardinal Splines, Bezier curves). پس شی میتواند از مجاورت هم قرارگرفتن این منحنیهای دقیق و پیچیده نیز ساخته شود. عکس زیر مثالی از سطح آزاد قوسی مباشد:

 یادگیری پرینتر سه بعدی

توجه کنید که ساختار منحنی پیچیده تر از همتایش یعنی چندضلعی است. در این حالت ساده سازی قربانی شده است ولی در عوض مزایای زیادی به دست می آید: ساختار منحنی آزاد میتواند با پارامترهای کمتر ریاضی، خطوط دقیقی از سطوح مدل سه بعدی را بسازد (در مقایسه با ساختار polygon موزاییکی). بنابراین به داده سازی کمتری نیز نیاز دارد که ساخت مدلهای پیچیده و بزرگ را بدون افزایش حجم فایل فراهم میکند.

  1. سطوح فرم آزاد (FREE-FORM SURFACES):

ساختاری تکامل یافته از موزاییکی چندضلعی میباشد. در این حالت امکان ساخت سطوح قوس دار هندسی با ساختار کاشی کاری فراهم شده است. این ساختار برای حجمهایی که فرمت ساختاری مشخصی ندارند بسیار کاربردی میباشد، مثال چنین فرمهای نامشخصی میتواند بدنه خودرو و قایق یا بالهای هواپیما باشد. معمولترین نوع از سطح فرم آزاد، مدل NURBS: Non-Uniform Rational B Spline میباشد که فرمت obj به خوبی از آن پشتیبانی میکند. عکس زیر این نوع ساختار سطح فرم آزاد را نشان میدهد:

یادگیری پرینتر سه بعدی

ساختار سطح آزاد مزایای مشابه ساختار سطح آزاد منحنی دارد؛ دقیقتر بوده و داده گذاری کمتری داشته و حجم نهایی فایل نیز کمتر است. حتی برخی اعتقاد دارند که ساختار آزاد سطحی از نوع منحنی آزاد نیز دقیقتر است. در  هر حال برای پرینت سه بعدی نمونه مدلهای پیچیده ای که دقت بسیار مهم است، این ساختار به کمک شما می آید (همانند مهندسی  قطعات هواپیما و خودرو).

در برخی اپلیکیشنها، ظاهر مدل سه بعدی اهمیت اصلی را دارا می باشد؛ هیچ کس دوست ندارد بازی کامپیوتری Need For Speed را در رنگهای بی روح و بدقواره پیش ببرد! خودروهای این بازی همگی خوش رنگ و درخشان هستند. درخشندگی و رنگ مثالی از خواص مرتبط با ظاهر مدل سه بعدی است. به زبان ساده،‌ ظاهر بیانگر پارامترهای سطح همچون نوع متریال، بافت و رنگ میباشد. این خواص چگونگی نمایش مدل سه بعدی پس از rendering را تعیین می کنند.

یادگیری پرینتر سه بعدی

فرمت obj امکان ذخیره سازی داده های بافت و رنگ را در ساختار MTL: Material Template Library فراهم میکند؛ ترکیب فرمت obj با فرمت MLT ، پشتیبانی بافت تمام رنگی را برای مدل سه بعدی میسر می نماید.

MTL شامل کدهای ASCII پارامترهای نور بازتابیده شده از سطح مدل سه بعدی میباشد. پس خواصی مثل رنگ پراکنده، رنگ فراگیر، رنگهای آیینه ای یا شفافیت قابل بازیابی میگردد.  علاوه بر رنگ بافت،‌ MIT از الگوی بافت یا texture mapping نیز پشتیبانی مینماید.

همانطور که میدانیم سطح مدل سه بعدی حالت polygonal mesh داشته و از تصاویر دوبعدی تشکیل یافته است (۲-dimensional image). مختصات این ساختار دوبعدی تصویری، شامل رنگ و بافت می باشد و وقتی عملیات redering انجام میپذیرد، هر نقطه از سطح به این مختصات تبدیل میگردد.

حالا سوالی پیش می آید:‌ آیا امکان پرینت سه بعدی رنگی با فرمت فایل OBJ وجود دارد؟

پاسخ:‌ بله امکانپذیر است. تکنولوژی متفاوتی از پرینترهای سه بعدی متریال فیلامنت وجود دارد، این نوع چاپگرها از فناوری «تابش گزینشی لیزر» متریال پودری بهره می برند. 

فرمت فایل obj به خوبی از پرینترهای سه بعدی رنگی پشتیبانی میکند و هم اکنون اکثر سازندگان آنرا به عنوان فرمت قابل قبول پیش فرض قرار داده اند.

نتیجه گیری:‌

در این مقاله جزییات فرمت فایل stl را شرح دادیم. اگر قطعات بزرگی با دقت بالا را مدلسازی سه بعدی میکنید، پس بهتر است به جای STL فرمت obj را امتحان کنید (اکثر نرم افزارهای اسلایسینگ فرمت obj را پشتیبانی میکنند). با این فرمت در نرم افزار اسلایسینگ، امکان خروجی گرفتن فایل Gcode که توسط چاپگر سه بعدی خوانش میشود، فراهم است.

اما در حالت معمول اگر به یک نرم افزار اسلایسینگ تسلط کامل دارید و این نرم افزار از فرمت OBJ پشتیبانی نمیکند، خیلی سخت نگیرید؛ همان STL به خوبی پاسخ دهنده نیازهای شماست و فراموش نکنید همچنان پرمصرفترین فرمت فایل چاپگرهای سه بعدی در جهان محسوب میشود.

فایل سه بعدی

خروج از نسخه موبایل