حدود محرك التخطيط
هذه الصفحة هي المرجع الداخلي الذي يحدد أين تبدأ وتنتهي مسؤوليات التخطيط داخل univis_ui_engine.
السطح الذي يكتبه المستخدم
layout::layout_system: نموذج الجذور العام وحالة الجذر المحلولةlayout::univis_node: مكوّنات العقدة والتخطيط والتموضع المحلي العامةlayout::geometry: بدائيات الأحجام والمسافات العامةlayout::imageوlayout::pbr: مساعدين عامين مرتبطين بمدخلات الرندر
pipeline الداخلية للتخطيط
layout::core::hierarchy: تتبع العمق وتحديث الأنساب المخزنةlayout::core::layout_cache: تتبع dirty ومرحلات stage وfrontier queueslayout::core::pass_up: القياس الداخلي ونشر أحجام المحتوىlayout::core::pass_down: مخرجات الحل النهائي وتموضع الأبناءlayout::core::solver: حل الأحجام وربط placementlayout::algorithms: منطق placement الخاص بكل algorithm
حد الرندر
- التخطيط يحل الحجم والموضع المنطقيين
- مزامنة الرندر تستهلك النتائج المحلولة وتحدث الـ mesh والمواد
- رندر النص هو الحالة الرئيسية العابرة للحدود، لذلك تملك
text_labelمنطق القياس والرندر معًا من جهة الوحدات الجاهزة
حد الجدولة
layout::registrationيربط settlement schedule وترتيب المراحلlayout::settlement_loopيملك التنفيذ المحدود وتتبع الأجيال والتحقق من الوصول إلى fixed point- الوحدات الأخرى يجب أن تصف العمل، لا أن تعيد تعريف سياسة settlement العامة
اتجاه الاعتماديات
- حل الجذور قد يغذي hierarchy وsolve وrender sync وpicking
- hierarchy والكاش قد يبطلان المراحل اللاحقة
- render sync يجب ألا يعيد إدخال measure أو solve إلا إذا تغير مُدخل تخطيط حقيقي كتبه المستخدم
- التشخيص والتحقق يمكنهما مراقبة pipeline لكن لا ينبغي أن يعيدا تعريف معناها بصمت