جستجو در دوره‌ها، کاربران و پست‌ها…
SOPs

Polyspline SOP

خلاصه (Summary) Polyspline SOP یک منحنی اسپلاین را بر اساس یک چندضلعی یا hull (پوسته) ایجاد می‌کند و سپس یک تقریب چندضلعی از آن اسپلاین را خروجی می‌دهد. می‌توان انتخاب کرد که تقسیم‌بندی‌ها بین نقاط اصلی انجام شوند یا این

خلاصه (Summary)

Polyspline SOP یک منحنی اسپلاین را بر اساس یک چندضلعی یا hull (پوسته) ایجاد می‌کند و سپس یک تقریب چندضلعی از آن اسپلاین را خروجی می‌دهد.
می‌توان انتخاب کرد که تقسیم‌بندی‌ها بین نقاط اصلی انجام شوند یا اینکه موقعیت نقاط اصلی نادیده گرفته شود و شکل به بخش‌هایی با طول مساوی تقسیم شود.

همچنین Polyspline می‌تواند به‌صورت اختیاری خروجی را بازنمونه‌گیری (Resample) کند و کنترل دقیق‌تری بر طول و تعداد بخش‌ها بدهد.

💡 نکته: هنگام استفاده از این SOP، بهتر است نمایش Points را در تنظیمات Viewport فعال کنید تا دقیقاً اثر این عملگر را مشاهده کنید.


پارامترها (Parameters - Page)

  • Group (group): زیرمجموعه‌ای از وجوه (faces) ورودی که باید استفاده شوند. از الگوهای Pattern Matching پشتیبانی می‌کند.

  • Spline Type (basis): نوع اسپلاین. ۷ انتخاب موجود است:

    • Bezier: اسپلاین استاندارد بزیه.

    • Special Bezier (sbezier): تغییر یافته بزیه.

    • Special Smooth Bezier (c1bezier): نسخه نرم‌تر بزیه.

    • Degree 2 Bezier (degree2): بزیه درجه ۲.

    • BSpline: منحنی نرم‌تر که الزاماً از نقاط اصلی عبور نمی‌کند.

    • Cardinal: منحنی از نقاط اصلی عبور می‌کند.

    • Linear: خطوط مستقیم بین نقاط.

  • Close (closure): تعیین می‌کند که منحنی خروجی باز باشد یا بسته:

    • Off: باز.

    • On: بسته.

    • If polygon does: بر اساس وضعیت چندضلعی ورودی (اگر بسته باشد، خروجی بسته است و بالعکس).

  • Division Method (divide): روش تقسیم‌بندی منحنی:

    • Standard: بازنمونه‌گیری انجام نشود.

    • Even Length Segments: بخش‌ها طول مساوی داشته باشند.

    • Even X Segments: بخش‌ها طول مساوی در محور X داشته باشند.

    • Even Y Segments: بخش‌ها طول مساوی در محور Y داشته باشند.

    • Even Z Segments: بخش‌ها طول مساوی در محور Z داشته باشند.

  • Segment Length (segsize): طول بخش‌ها در منحنی بازنمونه‌گیری‌شده.

    • اگر روش Even Length Segments انتخاب شود و Output Divisions برابر صفر باشد، این پارامتر تعیین می‌کند چند بخش در کل منحنی ایجاد شود.

    • اگر هم Output Divisions و هم Segment Length صفر باشند → خطا (Invalid number of divisions or segment size).

  • Output Divisions (polydivs): تعداد بخش‌ها در منحنی بازنمونه‌گیری‌شده.

    • در حالت Standard بی‌اثر است.

    • در حالت Even Length Segments تعداد یال‌های خروجی را مشخص می‌کند.

  • Sample Divisions (edgedivs): تعداد تقسیمات اولیه اسپلاین قبل از بازنمونه‌گیری.

  • First CV Count (first): تعداد دفعات تکرار اولین کنترل‌ورتیس (CV).

    • برای مش‌های باز مفید است چون باعث می‌شود منحنی تا ابتدای خط ورودی ادامه پیدا کند.

    • مثال: مقدار ۲ → منحنی Cardinal تا اولین ورتیس ادامه می‌یابد؛ مقدار ۳ → B-Spline تا اولین ورتیس ادامه می‌یابد.

  • Last CV Count (last): مشابه بالا ولی برای آخرین کنترل‌ورتیس.

  • CV Tension (tension): کششی که نقاط ورودی بر منحنی وارد می‌کنند.

    • هرچه بیشتر باشد، شکل خروجی نزدیک‌تر به شکل اصلی خواهد بود.


ورودی‌ها (Operator Inputs)

  • Input 0: چندضلعی یا hull ورودی.


کانال‌های Info (Info CHOP Channels)

🔹 Common SOP Info Channels

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

  • num_prims → تعداد پرایمیتیوها (چندضلعی‌ها).

  • num_particles → تعداد ذرات.

  • last_vbo_update_time → زمان صرف‌شده در رشته دیگر برای آپدیت داده‌های هندسی روی GPU.

  • last_meta_vbo_update_time → زمان صرف‌شده برای آپدیت داده‌های سطوح متا (مثل metaballs یا NURBS).

🔹 Common Operator Info Channels

  • 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 → تعداد خطاها.