اهمیت و کاربرد بلاکها
راینو در کنار تمام ابزارها و امکاناتی که برای مدلسازی آسون و دقیق فرمهای پیچیده داره، امکانات زیادی هم برای مدیریت آبجکتها و فایلها داره. اما به این بخش کمتر توجه شده و حتی خیلی از کاربران حرفهای راینو هم به اندازه کافی با این قابلیتها آشنایی ندارن و ازش استفاده نمیکنن. یکی از این قابلیتها مفهومیه به نام بلاک (Block). تو این نوشته تلاش میکنم در مورد ایده کلی، کابرد و ابزارهای مرتبط با بلاکها به زبان خیلی ساده و با چندتا مثال کاربردی توضیح بدم. پس تا آخرش همراه من باش.
توی خیلی از مدلهای سهبعدی که با راینو میسازیم قطعاتی وجود دارن که چندین و چند بار تکرار میشن. مثلا تو طراحی داخلی لازم میشه یه صندلی رو چندین بار تکرار کنید و جاهای مختلفی از فضا چیدمان کنید، تو طراحی جواهر یه نگین با سایز و تراش خاص، به همراه چنگها و متعلقاتش تو قسمتهای مختلفی از طرح تکرار میشه و به همین ترتیب تو تمام زمینههای طراحی مثالهایی از این آبجکتهای تکراری میتونید پیدا کنید. حالا سناریویی رو تصور کنید که به دلایل مختلف تمام اون آبجکتها قراره تغییر کنن. تو مثال طراحی جواهر فرض کنید تصمیم میگیرید سایز تمام چنگها رو کمی کوچیکتر کنید، یا حتی به جای چنگ (Prong) از یه روش گوهرنشانی (Gemsetting) متفاوت مثل بزل (Bezel) استفاده کنید. باید این قطعات تکراری رو یکییکی تغییر بدید… یه کار طاقتفرسا که وقت و اعصاب رو با هم میبره! 🥲
اما راینو برای این شرایط یه راهحل بینظیر داره، بلاک! اگه هوشمندانه از بلاکها استفاده کرده باشیم, فقط کافیه تعریف بلاک رو ویرایش کنیم تا تمام نمونههاش هم تغییر کنن و بروز بشن. یا حتی اگه بلاک آمادهای از قبل داریم، اون رو با تمام نمونههای بلاک قبلی جایگزین کنیم. بلاکها علاوه بر این که مدیریت آبجکتهای تکراری رو آسونتر و دقیقتر میکنن، جلوی افزایش اندازه فایل هم میگیرن. (چون تمام نمونهها ارجاع به یه تعریف دارن, با تکثیر اونها اندازه فایل بزرگتر نمیشه.) همینطور با استفاده از بلاکها میتونید کتابخونهای از آبجکتها به همراه توضیحات مخصوص هر کدومشون داشته باشید و هر جا که لازم بشه ازشون تو فایلتون استفاده کنید. حالا که با ایده کلی بلاکها آشنا شدیم بریم و در عمل ببینیم چطور میتونیم ازشون تو فرآیند مدلسازی و طراحی استفاده کنیم.
تعریف بلاک (Block Definition) و نمونه بلاک (Block instance)
قبل اینکه بریم سراغ دستورهای مربوط به بلاک، لازمه دوتا مفهوم رو در مورد بلاکها یاد بگیریم: تعریف بلاک و نمونه بلاک. روال کلی کار با بلاکها به این ترتیبه که اول باید یه بلاک تعریف کنیم و بعد، از اون تعریف هرچندتا که بخوایم نمونه تو قسمتهای مختلف مدل جانمایی کنیم. نمونه ها میتونن تو اندازهها و زاویههای مختلف تو فضای سهبعدی قرار بگیرن و با تغییر تعریف بلاک، تمام نمونهها هم تغییر میکنن.
نحوه ایجاد بلاک در راینو
برای ایجاد یه تعریف بلاک جدید کافیه تمام آبجکتهایی رو که قراره تو اون بلاک قرار بگیرن انتخاب کنی و کلیدهای Ctrl+B رو از صفحهکلید فشار بدی. (دستور Block هم همین کارو انجام میده) بعد از این کار راینو از شما میخواد یه نقطه مبنا (Base point) برای اون بلاک انتخاب کنید. اهمیت این نقطه تو مراحل بعدی مشخص میشه، زمانی که یه بلاک رو جایگزین بلاک دیگه کنید دقیقا نقطه مبنای بلاک جدید روی نقطه مبنای بلاک قبلی جایگزین میشه. ضمن اینکه اگه تنظیمات گامبال روی حالت Align to abject باشه، وقتی نمونه بلاک رو انتخاب کنید گامبال دقیقا روی نقطه مبنا نشون داده میشه. بعد از انتخاب نقطه مبنا پنجرهای باز میشه که مشخصات بلاک رو تو این قسمت باید وارد کنید. البته فقط اسم بلاک (Name) ضروریه و میتونید از وارد کردن بقیه اطلاعات صرفنظر کنید.
بعد از اینکه روی OK کلیک کنید تعریف بلاک شما به همراه یک نمونه ازش ایجاد میشه. حالا میتونید از اون نمونه بلاک هرچندتا که بخواید کپی بگیرید و توی مدلتون بارها تکرارش کنید بدون اینکه به ازای هر کپی جدید فایل سنگینتر و اندازهش بزرگتر بشه. برای ویرایش تعریفهای ایجاد شده کافیه روی هر کدوم از نمونهها (به شرط اینکه در صورت کوچیک یا بزرگ شدن تو هر سه راستا به یه نسبت تغییر کرده باشه) دوبار کلیک کنید. همینطور میتونید بلاک رو انتخاب کنید و دستور BlockEdit رو تو خط فرمان وارد کنید.
سایر دستورهای مربوط به بلاک
حتی با پاک کردن تمام نمونههای بلاک، بازم تعریف بلاک پاک نمیشه و هرجا لازم بشه میتونید دوباره یه نمونه جدید ازش رو تو فضای سهبعدی اضافه کنید. برای این کار باید از دستور Insert استفاده کنید. تو پنجره Insert از قسمت Name بلاکی رو که قصد دارید ازش نمونه بسازید انتخاب کند و روی OK کلیک کنید. حالا باید نقطهای از فضای سهبعدی رو با کلیک کردن یا وارد کردن مختصات مشخص کنید تا یه نمونه از بلاک انتخاب شده تو اون نقطه ایجاد بشه. یادتون نره تو قسمت Insert as حتما گزینه Block instance رو انتخاب کنید.
برای دیدن تمام تعریفهای بلاک موجود تو یه فایل و تعداد نمونههایی که از هر کدومشون تو فایل تکرار شده میتونید از پنل مدیریت بلاکها استفاده کنید. کافیه دستور BlockManager رو تو خط فرمان وارد کنی تا این پنل نمایش داده بشه. تو این پنل میتونید نام و تعداد نمونههای هر بلاک رو ببینید و با انتخاب کردن هر بلاک تو کادر پایین پنل مشخصاتش رو ویرایش کنید. همینطور با کلیک دکمه سمت راست ماوس روی هر بلاک و انتخاب گزینه Select Instances تمام نمونههای اون بلاک رو انتخاب کنید.
جایگزینی بلاکها
حالا که با بلاکها تا حدی آشنا شدیم برگردیم به مثال اول این نوشته، یعنی شرایطی که یه آبجکت تکراری تو مدلمون داریم و لازمه یه تغییری روی تک تک اون آبجکتها اعمال بشه. روش هوشمندانه اینه که بجای کپی کردن خود آبجکتها، اول از اونها یه بلاک بسازیم و بلاک رو کپی کنیم. حالا خیلی راحت میتونیم با دوبار کلیک رو هر کدوم از اون بلاکها وارد Block edit بشیم و بعد از اعمال تغییرات دلخواه روی تعریف بلاک تمام نمونهها هم تغییر میکنن. روش دیگه اینه که یه بلاک جدید بسازیم و با بلاک قبلی جایگزین کنیم. برای این کار هم میتونیم در زمان ساخت بلاک جدید در قسمت Name اسم بلاک قبلی رو وارد کنیم تا تعریف بلاک جدید (و در نتیجه تمام نمونههاش) جایگزین اون بشه و هم میتونیم از دستور ReplaceBlock استفاده کنیم.
نکتههایی در مورد بلاکها در راینو
- بلاکها میتونن تو در تو باشن. یعنی تو یه بلاک میتونه چند تا بلاک دیگه باشه.
- برای تبدیل یه نمونه بلاک به آبجکتهای سازندهش باید اون نمونه بلاک رو Explode کنی.
- حتی با پاک کردن تمام نمونههای یه بلاک بازم تعریف بلاک تو اون فایل باقی میمونه. برای حذف تعریف بلاکها میتونی از BlockManager استفاده کنی.
- برای تغییر متریال و رنگ هر بلاک باید از طریق BlockEdit این کارو انجام بدی
- با دستور Insert میتونی تمام آبجکتهای یه فایل دیگه رو به صورت یه بلاک به فایلت اضافه کنی به نحوی که با تغییر تو فایل اصلی، بلاک لینک شده به اون هم تغییر کنه. برای اینکار بعد از انتخاب فایل تو پنجره Insert File Options گزینه Linked رو انتخاب کن!
- اگه از یه آبجکت خاص زیاد تو کارات استفاده میکنی، میتونی اون رو به صورت یه تعریف بلاک در بیاری و فایل رو به عنوان یه Template ذخیره کنی. از این به بعد وقتی فایل جدید میسازی اون تمپلیت رو انتخاب کن تا با دستور Insert بتونی بلاک مورد نظر رو راحت و بیدردسر به مدلت اضافه کنی.
بلاکها در گرسهاپر
گرسهاپر (فقط تو راینو ۸) ابزارهایی برای ایجاد مستقیم تعریف و نمونه بلاک داره. حتی میتونه تعریف بلاکها رو از یه فایل دیگه بخونه و به فایلتون اضافه کنه. تو این ویدیو امکانات جدید گرسهاپر برای کار کردن با بلاکها رو میتونید ببینید.
اگه شمام از بلاکها تو مدلسازی با راینو استفاده میکنید لطفا تجربهتون رو تو قسمت دیدگاههای همین پست با ما در میون بذارید و اگه نکتهای در مورد بلاکها میدونید که تو این نوشته از قلم افتاده حتما بهش اشاره کنید. اگر هم تازه با خوندن این نوشته با بلاکها آشنا شدین خوشحال میشم نظرتون رو بدونم. طبق معمول میتونید پرسشهاتون رو در مورد راینو و پلاگینهای راینو تو گروه تلگرام پرسش و پاسخ راینو مطرح کنید تا من و بقیه دوستان پاسخگوی شما باشیم.