Fillet SOP
خلاصه
Fillet SOP برای ایجاد یک هندسهی پلمانند و نرم بین دو منحنی/چندضلعی یا دو سطح/مش استفاده میشود.
فیلهکردن یک primitive جدید بین هر جفت ورودی ایجاد میکند و هیچوقت شکلهای اصلی را تغییر نمیدهد. این در تضاد با Join SOP و Stitch SOP است. در حالیکه Join SOP انتهای primitives متصل را تغییر میدهد و Stitch SOP شکلهای اصلی را تغییر میدهد اما تعداد primitives خروجی را تغییر نمیدهد.
برای توضیح دربارهی primitives «چپ» و «راست» و همچنین ورودی کمکی (auxiliary input) به Align SOP مراجعه کنید.
نکته: منحنیهای Trim در فیله در نظر گرفته نمیشوند. برای این کار از Join SOP استفاده کنید.
پارامترها – صفحه
-
Group group: مشخص میکند کدام primitives فیله شوند. اگر خالی بماند، کل ورودی فیله میشود. از الگوها مطابق توضیحات Pattern Matching پشتیبانی میکند.
-
Fillet fillet ⊞: امکان فیله کردن زیرگروههایی از N primitive یا هر nامین primitive به صورت چرخهای را میدهد.
-
مثال: اگر شش primitive با شمارههای 0 تا 5 داشته باشیم و N = 2:
-
حالت Groups: فیله بین 0-1، 2-3، 4-5
-
حالت Skipping: فیله بین 0-2-4 و 1-3-5
-
-
-
N inc: تعداد primitives برای گروهبندی یا پرش را مشخص میکند.
-
Wrap Last to First loop: ابتدا و انتهای اولین primitive را به آخرین primitive فیلهشده وصل میکند. اگر فقط یک primitive وجود داشته باشد، بین ابتدا و انتهای آن فیله ایجاد میشود.
-
Direction dir ⊞: جهت پارامتریک عملیات فیله را مشخص میکند. این گزینه فقط وقتی معنی دارد که ورودیها سطوح باشند.
-
in U ujoin: ستونها
-
in V vjoin: ردیفها
-
-
-
Primitive Type primtype – ⊞ – نوع پرمیتیوی که توسط فیلت ایجاد خواهد شد را انتخاب کنید.
-
Input Geometry Type input – فیلت را بین جفت پرمیتیوهای همنوع ایجاد میکند. اگر جفت پرمیتیوها از نوع متفاوت باشند، نوع عمومیتر انتخاب میشود (مثلاً NURBS بر Bzier، Bzier بر روی پلیگونها).
-
Polygon polygon – ایجاد فیلت پلیگونی بین جفت پرمیتیوها.
-
NURBS nurbs – ایجاد فیلت NURBS بین جفت پرمیتیوها با ترتیب مشخص.
-
Bezier bezier – ایجاد فیلت Bzier بین جفت پرمیتیوها با ترتیب مشخص.
-
Order order – ترتیب ساخت فیلتهای spline.
-
Left UV leftuv – ⊞ – نقطه پارامتریک روی هر پرمیتیو سمت چپ که فیلت از آنجا شروع شود.
-
Right UV rightuv – ⊞ – نقطه پارامتریک روی هر پرمیتیو سمت راست که فیلت از آنجا شروع شود.
-
LR Width lrwidth – ⊞ – مقدار اول نشاندهنده نسبت فیلت در پرمیتیو سمت چپ، مقدار دوم نشاندهنده نسبت فیلت در پرمیتیو سمت راست.
-
LR Scale lrscale – ⊞ – برای کنترل جهت و مقیاس اولین و آخرین بخشهای فیلت استفاده میشود.
-
LR Offset lroffset – ⊞ – موقعیت اولین و آخرین بخشهای فیلت را کنترل میکند.
-
Match Input to Fillets seamless – اگر فعال شود، ورودیها طوری تغییر میکنند که ایزپارمها از یک پرمیتیو، از طریق فیلت تا پرمیتیو دیگر به صورت پیوسته دیده شوند. همچنین پرمیتیوها به یک نوع و ترتیب ارتقا داده میشوند تا خطاهای رندر کاهش یابد یا حذف شود، البته با هندسه دقیقتر.
-
Cut Primitives cut – اگر فعال باشد، پرمیتیوها در نقطه شروع فیلت برش داده میشوند.
ورودیهای اپراتور
-
Input 0: – ورودی اصلی هندسه
-
Input 1: – ورودی دوم (معمولاً برای فیلت یا مسیر)
کانالهای Info CHOP
اطلاعات اضافی Fillet SOP از طریق Info CHOP قابل دسترسی است.
کانالهای مشترک اطلاعات SOP:
-
num_points – تعداد نقاط در این SOP
-
num_prims – تعداد پرمیتیوها در این SOP
-
num_particles – تعداد ذرات در این SOP
-
last_vbo_update_time – زمان صرفشده در thread دیگر برای بهروزرسانی دادههای هندسه روی GPU از دادههای CPU SOP. جزو زمان فریم معمولی نیست.
-
last_meta_vbo_update_time – زمان صرفشده در thread دیگر برای بهروزرسانی هندسه متا روی GPU از دادههای CPU SOP. جزو زمان فریم معمولی نیست.
کانالهای مشترک اطلاعات اپراتور:
-
total_cooks – تعداد دفعاتی که اپراتور اجرا شده است
-
cook_time – مدت زمان آخرین اجرا به میلیثانیه
-
cook_frame – شماره فریم آخرین اجرا نسبت به timeline کامپوننت
-
cook_abs_frame – شماره فریم آخرین اجرا نسبت به زمان مطلق
-
cook_start_time – زمان شروع اجرای اپراتور در همان فریم به میلیثانیه
-
cook_end_time – زمان پایان اجرای اپراتور در همان فریم به میلیثانیه
-
cooked_this_frame – ۱ اگر اپراتور در این فریم اجرا شده باشد
-
warnings – تعداد هشدارها در این اپراتور
-
errors – تعداد خطاها در این اپراتور
-
