خلاصه (Summary)

Join CHOP همه ورودی‌های خود را دریافت کرده و آن‌ها را به ترتیب به هم متصل می‌کند. انتظار می‌رود همه ورودی‌ها کانال‌های یکسانی داشته باشند.

بخش انتهایی اولین CHOP با بخش ابتدایی CHOP دوم هم‌پوشانی می‌شود، و همین روند برای سایر ورودی‌ها ادامه دارد. ورودی دوم طوری جابه‌جا می‌شود که ابتدای آن با انتهای ورودی اول هم‌خط شود.

  • Blending امکان ترکیب کانال‌ها را فراهم می‌کند: با محو تدریجی یک CHOP و ظاهر شدن تدریجی CHOP بعدی، یا با درج منحنی‌های درون‌یابی بین کانال‌های CHOPهای مجاور.

  • Quaternion Blend برای کانال‌های چرخش (rx, ry, rz) استفاده می‌شود و چرخش‌ها را با کوتاه‌ترین قوس دوران ترکیب می‌کند. کانال‌های چرخش توسط ویژگی “quaternion” که در Attribute CHOP تنظیم می‌شود شناسایی می‌شوند.

  • Translation Blending برای کانال‌های انتقال (*tx, *ty, *tz) استفاده می‌شود و انتقال‌ها را با تغییر تدریجی از سرعت نهایی کانال قبلی به سرعت اولیه کانال بعدی ترکیب می‌کند. اگر جابه‌جایی ناخواسته رخ دهد، بهتر است از Cubic Blending (در منوی Shape) استفاده شود.


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

  • Method (blendmethod): ⊞ – روش ترکیب برای تولید توالی بدون درز.

  • Shape (blendfunc): ⊞ – شکل منحنی درون‌یابی برای ترکیب. (مشابه Shape در Cycle CHOP)

    • Linear (lin)

    • Ease in (ei)

    • Ease out (eo)

    • Ease in Ease out (cos)

    • Cubic (cub)

    • Add (add)

    • Hold Previous (holdprev)

  • First Input Specifies Blend Regions (blendbyinput): اگر فعال شود، ورودی اول می‌تواند چندکاناله باشد و نواحی ترکیب را برای سایر ورودی‌ها مشخص کند.

    • کانال 1 از ورودی0 → ترکیب بین ورودی1 و ورودی2

    • کانال 2 از ورودی0 → ترکیب بین ورودی2 و ورودی3

    • و به همین ترتیب…
      اگر کانال کافی وجود نداشته باشد، آخرین کانال تکرار می‌شود.

  • Region (blendregion): اندازه ناحیه‌ی ترکیب.

  • Blend Region Unit (blendregionunit): واحد اندازه ناحیه ترکیب.

  • Bias (blendbias): مشخص می‌کند کدام بخش در ترکیب غالب باشد:

    • مقدار -1 → ورودی قبلی

    • مقدار +1 → ورودی بعدی

    • مقدار 0 → هیچ‌کدام

  • Match by (match): ⊞ – تعیین تطابق کانال‌ها بین ورودی‌ها:

    • Channel Index (index)

    • Channel Name (name)


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

  • Step (step): اگر روی 1 تنظیم شود، بخش بعدی به بالا یا پایین جابه‌جا می‌شود تا دقیقاً از جایی شروع شود که بخش قبلی تمام شده است.

  • Step Scope (stepscope): نام کانال‌هایی که Step روی آن‌ها اعمال می‌شود.

  • Blend Scope (blendscope): نام کانال‌هایی که باید ترکیب شوند. سایر کانال‌ها ترکیب نمی‌شوند.

  • Translate X Blend (transscopex): نام کانال‌هایی که برای X ترکیب انتقال دارند (*tx *ty *tz).

  • Translate Y Blend (transscopey): نام کانال‌هایی که برای Y ترکیب انتقال دارند.

  • Translate Z Blend (transscopez): نام کانال‌هایی که برای Z ترکیب انتقال دارند.


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

  • Quaternion Blend (quatrot): فعال‌سازی ترکیب کواترنیونی برای کانال‌های چرخش.

  • Shortest Path Rotation Blending (shortrot): اگر فعال باشد، چرخش‌ها با کوتاه‌ترین مسیر تصحیح می‌شوند.

  • Rotation Scope (rotscope): وقتی Shortest Path Rotation Blending روشن باشد فعال می‌شود.

  • Cycle Length (cyclelen): طول چرخه، زمانی که Shortest Path Rotation فعال است.


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

  • Time Slice (timeslice): اگر روشن باشد، کانال‌ها به‌صورت Time Sliced محاسبه می‌شوند (فاصله‌ی زمانی بین آخرین Cook و فریم جاری).

  • Scope (scope): مشخص می‌کند کدام کانال‌ها تحت تأثیر قرار گیرند.

Sample Rate Match (srselect): ⊞ – مدیریت نرخ نمونه‌برداری ورودی‌ها:

  • Resample At First Input’s Rate (first)

  • Resample At Maximum Rate (max)

  • Resample At Minimum Rate (min)

  • Error If Rates Differ (err)

Export Method (exportmethod): ⊞ – روش اتصال کانال CHOP به پارامتر مقصد:

  • DAT Table by Index (datindex)

  • DAT Table by Name (datname)

  • Channel Name is Path:Parameter (autoname)

Export Root (autoexportroot): مسیر پایه برای Exportهای نسبی.
Export Table (exporttable): جدول DAT که اطلاعات Export در آن ذخیره می‌شود.


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

  • Input 0: ورودی اول داده‌ها


کانال‌های Info CHOP

اطلاعات اضافه Join CHOP از طریق Info CHOP در دسترس است.

Common CHOP Info Channels

  • start: شروع بازه CHOP (برحسب نمونه)

  • length: تعداد نمونه‌ها

  • sample_rate: نرخ نمونه‌برداری (فریم بر ثانیه)

  • num_channels: تعداد کانال‌ها

  • time_slice: اگر Time Slice فعال باشد = 1 وگرنه = 0

  • export_sernum: تعداد دفعات به‌روزرسانی اتصالات Export

Common Operator Info Channels

  • total_cooks: تعداد دفعات Cook از شروع پروسه

  • cook_time: مدت زمان Cook آخر (ms)

  • cook_frame: شماره فریم Cook آخر نسبت به Timeline کامپوننت

  • cook_abs_frame: شماره فریم Cook آخر نسبت به زمان مطلق

  • cook_start_time: زمان شروع Cook در آن فریم (ms)

  • cook_end_time: زمان پایان Cook در آن فریم (ms)

  • cooked_this_frame: اگر در این فریم Cook شده باشد = 1

  • warnings: تعداد هشدارها (در صورت وجود)

  • errors: تعداد خطاها (در صورت وجود)