Table COMP

Table COMP

خلاصه

کامپوننت Table یک شبکه از ابزارهای رابط کاربری (UI gadgets) ایجاد می‌کند. این پنل‌ها در قالب یک شبکه (grid) چیده می‌شوند، جایی که محتوای هر سلول توسط جدول‌های DAT تعریف می‌شود.

کلاس پایتون: tableCOMP_Class


فهرست

  1. خلاصه

  2. ویژگی‌ها (Attributes)

  3. جدول‌های مقادیر (Value Tables)

  4. پارامترها – برگه Table

  5. پارامترها – برگه Layout

  6. پارامترها – برگه Panel

  7. پارامترها – برگه Look

  8. پارامترها – برگه Children

  9. پارامترها – برگه Drag/Drop

  10. پارامترها – برگه Extensions

  11. پارامترها – برگه Common

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

  13. کانال‌های Info CHOP
     13.1 کانال‌های عمومی COMP Info
     13.2 کانال‌های عمومی Operator Info


ویژگی‌ها (Attributes)

هر سلول در یک کامپوننت Table توسط ویژگی‌هایی در یک جدول DAT توصیف می‌شود که شامل فونت، اندازه، رنگ و غیره هستند. این ویژگی‌ها می‌توانند در جدول‌های مختلف قرار داشته باشند.

برای هر سلول، جستجو برای ویژگی‌ها به این ترتیب انجام می‌شود:

  1. جدول ویژگی‌های مربوط به همان سلول،

  2. سپس جدول ویژگی‌های سطر،

  3. سپس جدول ویژگی‌های ستون،

  4. و در نهایت جدول ویژگی‌های کل جدول.

این جدول‌های ویژگی (Attribute Tables) خودشان با استفاده از lookup tables سطح دوم پیدا می‌شوند که بسته به وضعیت (state) فعلی سلول استفاده می‌شوند.

وضعیت‌های ممکن سلول:

  • default (پیش‌فرض)

  • rollover (وقتی ماوس روی سلول قرار می‌گیرد)

  • select (انتخاب‌شده)

  • selectrollover (انتخاب‌شده + ماوس روی آن)

وضعیت هر سلول را می‌توان با یک Info DAT بررسی کرد.


سازماندهی جدول ویژگی‌ها (Attribute Tables)

  • هر سطر یک ویژگی را توصیف می‌کند.

  • ستون اول: نام ویژگی.

  • ستون دوم: مسیر اختیاری به یک جدول از مقادیر برای آن ویژگی.

  • اگر ستون دوم خالی باشد، ستون‌های باقی‌مانده شامل مقادیر همان ویژگی هستند.


فهرست ویژگی‌های موجود

  • type t → نوع (field/label)

  • fieldtype t → نوع فیلد (float/string/integer)

  • setpos b x y → تعیین موقعیت مطلق سلول به پیکسل (وقتی b=1)

  • width w → عرض سلول (پیکسل)، مقدار -1 به معنی کشسان (stretchy)

  • height h → ارتفاع سلول (پیکسل)، مقدار -1 کشسان

  • offset x y → جابجایی موقعیت سلول به پیکسل

  • padding l r b t → پدینگ (فاصله داخلی) سلول

  • margin l r b t → مارجین (فاصله خارجی) سلول

  • bgcolor r g b a → رنگ پس‌زمینه

  • borderacolor r g b a → رنگ مرز (Border A)

  • bordera l r b t → منبع رنگ لبه‌های Border A
     (۰=خاموش، ۱=استفاده از رنگ borderA، ۲=استفاده از borderB)

  • borderbcolor r g b a → رنگ مرز (Border B)

  • borderb l r b t → منبع رنگ لبه‌های Border B
     (۰=خاموش، ۱=borderA، ۲=borderB)

  • fontpath path → مسیر فونت (استفاده همزمان با font مجاز نیست)

  • font string → نام فونت (مثل Verdana – نباید با fontpath ترکیب شود)

  • fontsize x [y] → اندازه فونت در محور X و اختیاری در Y

  • fontcolor r g b a → رنگ فونت

  • fontformat string → فرمت فونت (polygon / outline / bitmap)

  • fontbold b → بولد (۰/۱)

  • fontitalic b → ایتالیک (۰/۱)

  • fontantialiased b → آنتی‌الیاسینگ فونت (۰/۱)

  • fontcharset string → مجموعه کاراکترها (ansi / symbol)

  • textlabel string → متن برچسب

  • textjustify h v → ترازبندی متن (چپ/راست/وسط – بالا/وسط/پایین)

  • textoffset x y → جابجایی موقعیت متن

  • wordwrap b → شکستن کلمات در چند خط (۰/۱)

  • image path → مسیر تصویر پس‌زمینه (TOP)

  • help path → مسیر متن راهنما (DAT)


جدول‌های مقادیر (Value Tables)

اگر مسیری به یک جدول مقادیر داده شود، این جدول شامل یک سطر برای هر سلول خواهد بود.

اگر جدول شما این فرمت را نداشته باشد، به‌راحتی قابل تبدیل است. مثال:
فرض کنید جدول مقادیر (Value Table DAT) شما ۳×۲ سلول دارد. برای تبدیل آن:

  1. یک DAT to CHOP اضافه کنید.

  2. سپس یک CHOP to DAT بعد از آن قرار دهید.

  3. در CHOP تنظیم کنید:
     - Output: Single Channel
     - First Row is: Values
     - First Column is: Values

این کار جدولی با ۱ ستون و ۶ سطر می‌سازد (همان چیزی که لازم است)، به شرطی که تمام مقادیر عددی باشند.


پارامترها – برگه Table

  • Cell Attributes DAT (attributes) → لیستی از DATهای ویژگی برای هر سلول.

  • Row Attributes DAT (rowattributes) → لیستی از DATهای ویژگی برای هر سطر.

  • Col Attributes DAT (colattributes) → لیستی از DATهای ویژگی برای هر ستون.

  • Table Attributes DAT (tableattributes) → یک مرجع تکی به یک DAT ویژگی.

  • Values DAT (values) → لیستی از مقادیر برای محتوای هر سلول (وقتی نوع سلول field باشد).

  • Table Rows (tablerows) → تعداد سطرهای جدول.

  • Table Columns (tablecols) → تعداد ستون‌های جدول.

  • Table Align (tablealign) → ترتیب قرارگیری سلول‌ها:
     - افقی چپ به راست (horizlr)
     - افقی راست به چپ (horizrl)
     - عمودی بالا به پایین (verttb)
     - عمودی پایین به بالا (vertbt)

  • Font Size Unit (fontsizeunit) → واحد اندازه فونت:
     - Pixels → اندازه‌ها بر اساس پیکسل
     - Points → اندازه‌ها بر اساس پوینت (۱/۷۲ اینچ در ۷۲ppi)

  • Info Format (infoformat) → تعیین نحوه نمایش وضعیت سلول‌ها در Info DAT:
     - State Column → نمایش به صورت ستونی
     - State Grid → نمایش به صورت شبکه مطابق جدول

  • Table Offset (tableoffset) → جابجایی رسم جدول (نه خود Table COMP).
     - X (tableoffsetx) → جابجایی افقی
     - Y (tableoffsety) → جابجایی عمودی

  • Table Reset (tablereset) → تازه‌سازی جدول (موقع تغییر DATهای تعریف‌شده مفید است).

    محدوده تغییر ارتفاع (H Range)

    resizeh – ⊞ → محدوده تغییر اندازه ارتفاع (پایین تا بالا) را محدود می‌کند.

    • resizehmin → حداقل مقدار تغییر ارتفاع.

    • resizehmax → حداکثر مقدار تغییر ارتفاع.


    جابجایی با کشیدن (Drag to Reposition)

    reposition – ⊞ → فعال‌سازی امکان جابجایی پنل یا پنجره با کشیدن توسط ماوس.

    • Off (off) → غیرفعال.

    • Window (window) → جابجایی پنجره.

    • Component (component) → جابجایی کامپوننت.

    Component (repocomp) → وقتی گزینه Component انتخاب شود، مسیر کامپوننت پنلی که می‌خواهید با ماوس جابجا شود مشخص می‌شود.

    محدوده جابجایی افقی (X Range)

    repositionx – ⊞ → وقتی Component انتخاب شده باشد، حداکثر محدوده جابجایی افقی کامپوننت را مشخص می‌کند.

    • repositionxmin → حداقل جابجایی افقی.

    • repositionxmax → حداکثر جابجایی افقی.

    محدوده جابجایی عمودی (Y Range)

    repositiony – ⊞ → وقتی Component انتخاب شده باشد، حداکثر محدوده جابجایی عمودی کامپوننت را مشخص می‌کند.

    • repositionymin → حداقل جابجایی عمودی.

    • repositionymax → حداکثر جابجایی عمودی.


    کشیدن لنگر (Anchor Drag)

    anchordrag – ⊞ → وقتی پارامتر Drag to Reposition روی Component باشد و حالت افقی/عمودی پنل روی Anchors تنظیم شده باشد، این گزینه تعیین می‌کند که کشیدن ماوس روی موقعیت Anchor تأثیر بگذارد یا Offset.

    • Anchors (anchors) → کشیدن ماوس مقدار پارامتر Anchor را تغییر می‌دهد.

    • Offsets (offsets) → کشیدن ماوس مقدار Offset را تغییر می‌دهد.


    همپوشانی اسکرول (Scroll Overlay)

    scrolloverlay – ⊞ → مشخص می‌کند آیا پنل تحت تأثیر موقعیت اسکرول‌بار باشد یا نه.

    • Off (off) → اسکرول‌بار به طور معمول روی پنل اثر می‌گذارد.

    • Ignore (ignore) → پنل هنگام اسکرول حرکت نمی‌کند. عمق پنل طبق پارامتر Depth Layer تعیین می‌شود.

    • Ignore and Draw Over (ignoreover) → پنل هنگام اسکرول حرکت نمی‌کند و روی اسکرول‌بار و پنل‌های دیگر کشیده می‌شود.


    پارامترها – برگه Look

    این بخش رنگ پس‌زمینه، مرز (Border) و رنگ غیرفعال پنل را تعیین می‌کند.

    رنگ پس‌زمینه

    bgcolor – ⊞ → مقدار RGB برای پس‌زمینه (پیش‌فرض: سیاه (0,0,0)).

    • bgcolorr → قرمز.

    • bgcolorg → سبز.

    • bgcolorb → آبی.

    bgalpha → شفافیت پس‌زمینه.

    Background TOP (top) → امکان استفاده از یک TOP به‌عنوان پس‌زمینه.

    حالت پر کردن TOP

    topfill – ⊞ → نحوه پر شدن پس‌زمینه با TOP.

    • Stretch (off) → کشیدن کامل.

    • Fill Width (horizontal) → پر کردن عرض.

    • Fill Height (vertical) → پر کردن ارتفاع.

    • Fill Best (best) → بهترین تناسب.

    • Native Resolution (native) → رزولوشن اصلی.

    • Fill Outside (outside) → پر کردن بیرون.

    کیفیت نمایش TOP

    topsmoothness – ⊞ → تنظیم وضوح تصویر TOP در پس‌زمینه.

    • Nearest Pixel (nearest) → استفاده از نزدیک‌ترین پیکسل (تصویر دندانه‌دار).

    • Interpolate Pixels (linear) → فیلتر خطی بین پیکسل‌ها.

    • Mipmap Pixels (mipmap) → استفاده از فیلتر میپ‌مپ (برای جزئیات زیاد).


    مرزها (Borders)

    • bordera – ⊞ → رنگ مرز A (RGB).

    • borderaalpha → شفافیت مرز A.

    • borderb – ⊞ → رنگ مرز B (RGB).

    • borderbalpha → شفافیت مرز B.

    مرزهای چپ، راست، بالا و پایین (و نسخه Inside هرکدام) مشخص می‌کنند که رنگ پیکسل‌های لبه‌ها از کدام مرز (A یا B) یا هیچ‌کدام گرفته شوند.

    borderover → ترسیم مرز پنل روی همه پنل‌های فرزند.


    رنگ غیرفعال (Disable Color)

    • dodisablecolor → فعال‌سازی رنگ غیرفعال.

    • disablecolor – ⊞ → مقدار RGB برای رنگ غیرفعال (پیش‌فرض سیاه).

    • disablealpha → شفافیت رنگ غیرفعال.

    • multrgb → ضرب کردن RGB در آلفا.


    ترکیب (Composite)

    composite – ⊞ → روش ترکیب پنل با پنل‌های دیگر. (مشابه Composite TOP)
    گزینه‌ها: Over, Under, Inside, Outside, Add, Subtract, Multiply.

    opacity → شفافیت کلی پنل.


    پارامترها – برگه Children

    کنترل نحوه چینش، اندازه و موقعیت پنل‌های فرزند.

    • align – ⊞ → نحوه چیدمان فرزندان (افقی، عمودی، Grid، یا بر اساس گره‌های شبکه).

    • spacing → فاصله بین فرزندان.

    • alignmax → حداکثر تعداد فرزند در هر ردیف/ستون.

    • margin – ⊞ → فاصله خارجی (چپ، راست، پایین، بالا).

    • justifymethod → ترازبندی گروهی یا فردی فرزندان.

    • justifyh / justifyv → ترازبندی افقی و عمودی.

    • fit – ⊞ → مقیاس‌دهی فرزندان (عرض، ارتفاع یا بهترین حالت).

    • scale – ⊞ → مقیاس افقی و عمودی.

    • offset – ⊞ → جابجایی فرزندان.

    • crop – ⊞ → برش دادن فرزندان بیرون‌زده.

    • phscrollbar / pvscrollbar → تنظیم اسکرول‌بار افقی/عمودی.

    • scrollbarthickness → ضخامت اسکرول‌بارها.


    پارامترها – برگه Drag/Drop

    کنترل قابلیت کشیدن و رها کردن (Drag-and-Drop).

    • drag – ⊞ → تعیین اجازه Drag (استفاده از تنظیمات والد، سیستم قدیمی یا ممنوع).

    • dragscript → اسکریپتی که هنگام شروع Drag اجرا می‌شود.

    • dropdestscript → اسکریپت مقصد Drop.

    • droptypescript → تعیین نوع داده‌هایی که قابل Drop هستند.

    • paneldragop → اپراتور جایگزین برای Drop.

    • drop – ⊞ → تعیین اینکه پنل پذیرای Drop باشد یا نه.

    • dropscript → اسکریپت هنگام Drop شدن.


    پارامترها – برگه Extensions

    مدیریت اکستنشن‌های پایتون متصل به کامپوننت.

    • ext → ایجاد اکستنشن‌ها.

    • ext0object → نمونه‌های کلاسی متصل.

    • ext0name → نام اختیاری برای جستجو.

    • ext0promote → تعیین دسترسی مستقیم یا از طریق .ext.

    • reinitextensions → بازکامپایل اکستنشن‌ها.


    پارامترها – برگه Common

    مدیریت نمای گره (Node Viewer)، کلون‌سازی و فایل‌های خارجی.

    • parentshortcut → میانبر داخلی برای والد.

    • opshortcut → میانبر سراسری.

    • iop / iop0op → میانبر اپراتورهای داخلی.

    • nodeview → نمای گره (پیش‌فرض یا اپراتور مشخص‌شده).

    • keepmemory → نگهداری در حافظه.

    • enablecloning / clone → تنظیمات کلون‌سازی.

    • loadondemand → بارگذاری هنگام نیاز.

    • enableexternaltox / externaltox → بارگذاری از فایل خارجی .tox.

    • reloadcustom / reloadbuiltin → بازخوانی پارامترهای سفارشی یا داخلی.

    • savebackup → ذخیره نسخه پشتیبان در .toe.

    • subcompname → بارگذاری یک Sub-Component خاص از tox.

    • relpath – ⊞ → تعیین رفتار مسیرهای نسبی.


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

    Input 0 → یک Table DAT که هر سطر آن محتوای سلول‌های Table COMP باشد.


    کانال‌های Info CHOP

    اطلاعات اضافه برای Table COMP از طریق Info CHOP:

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

    • num_children → تعداد فرزندان.

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

    • total_cooks → تعداد cookها.

    • cook_time → مدت زمان cook آخر (ms).

    • cook_frame → شماره فریم cook آخر (نسبت به تایم‌لاین کامپوننت).

    • cook_abs_frame → شماره فریم cook آخر (نسبت به زمان مطلق).

    • cook_start_time → زمان شروع cook (ms).

    • cook_end_time → زمان پایان cook (ms).

    • cooked_this_frame → آیا در این فریم cook شده یا نه.

    • warnings → تعداد هشدارها.

    • errors → تعداد خطاها.

دیدگاهتان را بنویسید