خلاصه
Node یا همان Joint SOP در ایجاد اسکلت‌های مبتنی بر دایره کمک می‌کند؛ به این صورت که مجموعه‌ای از دایره‌ها را بین هر جفت از دایره‌های ورودی می‌سازد. این SOP برای عملکرد صحیح به حداقل یک جفت دایره نیاز دارد.


پارامترها – صفحه

  • Group (گروه) – اگر گروه ورودی وجود داشته باشد، مشخص کردن یک نام گروه در این فیلد باعث می‌شود این SOP فقط روی همان گروه عمل کند. الگوها (patterns) را طبق توضیح در Pattern Matching می‌پذیرد.

  • Divisions (divs) – تعداد دایره‌هایی که بین هر جفت دایره ورودی ساخته می‌شوند را مشخص می‌کند.

  • Preserve First Input (preserve1) – دایره ورودی اولی که وارد SOP می‌شود را حفظ می‌کند.

  • Preserve Last Input (preserve2) – دایره ورودی آخری را حفظ می‌کند.

  • Orient Circles (orient) – کمک می‌کند تا یک اتصال (joint) ایجاد شود که بین دایره‌های ورودی ترکیب شود بدون اینکه صاف یا برآمده به نظر برسد. برای انجام این کار، ممکن است نرمال (Normal) دایره‌های ورودی برعکس شود. برای مثال، اگر نرمال‌های دو دایره ورودی در جهت مخالف باشند، جوینت ساخته‌شده (در صورت خاموش بودن این گزینه) طوری ظاهر می‌شود که دو دایره را از راه طولانی به هم وصل می‌کند. فعال‌سازی این گزینه باعث می‌شود اتصال از کوتاه‌ترین مسیر ساخته شود.

  • Smooth Path (smoothpath) – اگر خاموش باشد، دایره‌های joint به صورت خطی با هم ترکیب می‌شوند. در غیر این صورت، آن‌ها در طول یک منحنی Bezier مکعبی بخش‌به‌بخش بین مراکز دایره‌ها قرار می‌گیرند. این گزینه زمانی مفید است که بیش از دو دایره ورودی وجود دارد و اتصالات باید به‌طور پیوسته به هم متصل شوند. اگر فعال نباشد، درون‌یابی ممکن است تیزتر از حد مطلوب شود.

  • Smooth Twist (smoothtwist) – هر دایره joint کمی چرخانده می‌شود تا محورهای X و Y آن هنگام نزدیک شدن به یک دایره ورودی هم‌تراز شوند. این تغییرات به صورت تدریجی و از طریق یک تابع Bezier بخش‌به‌بخش اعمال می‌شوند. این گزینه هم در ورودی‌های چند دایره‌ای مفید است.

  • Align Major Axes (majoraxes) – اگر فعال باشد، بزرگ‌ترین محور دایره اول با بزرگ‌ترین محور دایره آخر هم‌تراز می‌شود. اگر غیرفعال باشد، محورهای X دایره اول و آخر هم‌تراز خواهند شد. این گزینه به کاهش پیچش (twist) در بیضی‌های joint بین استخوان‌ها کمک می‌کند.

  • Minimum Twist (mintwist) – اگر روشن باشد، چرخش‌های دایره‌های اضافه‌شده طوری محاسبه می‌شوند که هیچ‌وقت بیش از نیم‌چرخ در هر جهت نچرخند. این حالت باعث ایجاد یک ظاهر پیوسته برای ساخت اسکلت می‌شود، اما ممکن است هنگام skinning مشکل ایجاد کند، چون آغاز هر دایره دیگر به صورت پیوسته هم‌تراز باقی نمی‌ماند.

  • LR Scale (lrscale) – ⊞ – این پارامترها شکل مسیر صاف (smooth path) را کنترل می‌کنند و شکل منحنی ضمنی را از سمت چپ یا راست تغییر می‌دهند. اگر گزینه Orient Circles فعال باشد، علامت مقیاس (scale) بی‌تأثیر خواهد بود. برای توضیح اصطلاحات نسبی “چپ” و “راست”، به Align SOP مراجعه کنید.

    • lrscale1

    • lrscale2

  • LR Offset (lroffset) – ⊞ – این پارامترها اجازه می‌دهند فاصله بین دایره‌ها را تغییر دهید و در نتیجه شکل joint را تحت تأثیر قرار دهید.

    • lroffset1

    • lroffset2


ورودی‌های اپراتور

  • Input 0:


کانال‌های Info CHOP

اطلاعات اضافی مربوط به Joint SOP از طریق یک Info CHOP در دسترس است.

کانال‌های عمومی SOP Info

  • num_points – تعداد نقاط در این SOP.

  • num_prims – تعداد primitiveها در این SOP.

  • num_particles – تعداد ذرات در این SOP.

  • last_vbo_update_time – مدت زمان صرف‌شده در یک thread دیگر برای به‌روزرسانی داده‌های هندسی روی GPU از داده‌های CPU در SOP. از آنجا که این فرآیند در یک thread دیگر انجام می‌شود، این زمان بخشی از زمان فریم معمولی نیست.

  • last_meta_vbo_update_time – مدت زمان صرف‌شده در یک thread دیگر برای به‌روزرسانی داده‌های هندسی سطح متا (مثل metaballها یا nurbs) روی GPU از داده‌های CPU در SOP. این زمان نیز بخشی از زمان فریم معمولی نیست.

کانال‌های عمومی Operator Info

  • total_cooks – تعداد دفعاتی که اپراتور از زمان شروع پردازش اجرا (cook) شده است.

  • cook_time – مدت زمان آخرین cook بر حسب میلی‌ثانیه.

  • cook_frame – شماره فریمی که آخرین بار این اپراتور در تایم‌لاین component پردازش شد.

  • cook_abs_frame – شماره فریمی که آخرین بار این اپراتور در زمان مطلق پردازش شد.

  • cook_start_time – زمان شروع پردازش اپراتور در فریمی که پردازش شد (بر حسب میلی‌ثانیه).

  • cook_end_time – زمان پایان پردازش اپراتور در فریمی که پردازش شد (بر حسب میلی‌ثانیه).

  • cooked_this_frame – اگر اپراتور در همین فریم پردازش شده باشد، مقدار 1.

  • warnings – تعداد هشدارهای موجود در این اپراتور (در صورت وجود).

  • errors – تعداد خطاهای موجود در این اپراتور (در صورت وجود).