Example
BoundingBox یک جعبه محدود محور (AABB) است که توسط دو Vector3 گوشهها: minimum (کمترین x, y, z) و maximum (بیشترین x, y, z). برای پرسوجوهای فضایی مانند تست نقطه‑در‑جعبه، کمککنندههای حذف بخشهای خارج از نمای دوربین (frustum culling) و برآورد اندازه در سطح صحنه استفاده میشود.
یک BoundingBox میتواند در یک null (خالی/غیرمقداردهی) حالت زمانی که بدون آرگومان ساخته میشود. فراخوانی merge() بر روی یک جعبه null آن را از اولین نقطه یا جعبه ارائهشده مقداردهی اولیه میکند.
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 | یک جعبه مرزی تهی (خالی) را برمیگرداند |
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
موارد مرتبط