Example
BoundingBox هو صندوق حدودي محاذى للمحاور (AABB) يُعرّف بواسطة اثنين Vector3 زوايا: minimum (أدنى x, y, z) و maximum (أعلى x, y, z). يُستخدم في الاستعلامات المكانية مثل اختبارات النقطة داخل الصندوق، مساعدات استبعاد المخفر، وتقدير حجم المشهد على مستوى المشهد.
A BoundingBox يمكن أن يكون في null (فارغ/غير مبدئ) الحالة عند إنشائه بدون أي وسائط. استدعاء merge() على null box يهيئه من أول نقطة أو صندوق مُقدم.
Example: aspose.threed.utilities
Example
| Example | Example |
|---|
BoundingBox() | Null (فارغ) صندوق احتواء |
BoundingBox(minimum, maximum) | يبني من اثنين Vector3 زوايا |
BoundingBox(min_x, min_y, min_z, max_x, max_y, max_z) | يبني من ست قيم عددية |
Example
| Example | Example | Example |
|---|
minimum | Vector3 | الزاوية التي لها أصغر قيم x, y, z. تُعيد (+inf, +inf, +inf) لصندوق فارغ |
maximum | Vector3 | الزاوية التي لها أكبر قيم x, y, z. تُرجِع (-inf, -inf, -inf) لصندوق فارغ |
center | Vector3 | نقطة المنتصف بين minimum و maximum; (0,0,0) لصندوق فارغ |
size | Vector3 | الامتداد لكل محور (maximum - minimum); (0,0,0) لصندوق فارغ |
دوال المصنع الثابتة
| Example | نوع الإرجاع | Example |
|---|
BoundingBox.get_null() | BoundingBox | يرجع صندوق حدودي فارغ (null) |
BoundingBox.get_infinite() | BoundingBox | يرجع صندوق حدودي لا نهائي يمتد عبر كل الفضاء |
طرق الكائن
| Example | نوع الإرجاع | Example |
|---|
merge(point) | None | يوسع الصندوق ليشمل Vector3, Vector4, أو آخر BoundingBox |
merge(x, y, z) | None | يوسّع الصندوق ليشمل النقطة (x, y, z) |
contains(point) | bool | Example True إذا كان الـ Vector3 النقطة داخل أو على الحد |
contains(box) | bool | Example True إذا box تقع بالكامل داخل هذا الصندوق |
overlaps_with(box) | bool | Example True إذا تقاطع الصندوقان |
scale() | float | يرجع أكبر قيمة إحداثية مطلقة — مفيدة كتقدير تقريبي لمقياس المشهد |
Example
انظر أيضًا