Example
BoundingBox je pravougaoni okvir (AABB) usklađen s osama definisan sa dva Vector3 temena: minimum (najmanji x, y, z) i maximum (najveći x, y, z). Koristi se za prostorne upite kao što su testovi tačka‑u‑okviru, pomoćni alati za culling vidnog polja i procena veličine na nivou scene.
A BoundingBox može biti u null (prazno/neinicijalizovano) stanje kada je kreirano bez argumenata. Pozivanje merge() na null box inicijalizuje je iz prve tačke ili kutije koja je prosleđena.
Example: aspose.threed.utilities
Example
| Example | Example |
|---|
BoundingBox() | Null (prazna) ograničavajuća kutija |
BoundingBox(minimum, maximum) | Konstruiše iz dva Vector3 uglova |
BoundingBox(min_x, min_y, min_z, max_x, max_y, max_z) | Konstruiše iz šest skalarnih vrednosti |
Example
| Example | Example | Example |
|---|
minimum | Vector3 | Ugao sa najmanjim x, y, z vrednostima. Vraća (+inf, +inf, +inf) za null box |
maximum | Vector3 | Ugao sa najvećim x, y, z vrednostima. Vraća (-inf, -inf, -inf) za null kutiju |
center | Vector3 | Srednja tačka između minimum i maximum; (0,0,0) za null kutiju |
size | Vector3 | Raspon po osi (maximum - minimum); (0,0,0) za null kutiju |
Statičke metode fabrike
| Example | Tip povratne vrednosti | Example |
|---|
BoundingBox.get_null() | BoundingBox | Vraća null (praznu) ograničavajuću kutiju |
BoundingBox.get_infinite() | BoundingBox | Vraća beskonačnu ograničavajuću kutiju koja obuhvata sav prostor |
Metode instance
| Example | Tip povratne vrednosti | Example |
|---|
merge(point) | None | Proširuje kutiju da uključi Vector3, Vector4, ili drugi BoundingBox |
merge(x, y, z) | None | Proširuje kutiju da uključi tačku (x, y, z) |
contains(point) | bool | Example True ako Vector3 tačka je unutar ili na granici |
contains(box) | bool | Example True ako box je potpuno unutar ove kutije |
overlaps_with(box) | bool | Example True ako se dva okvira presecaju |
scale() | float | Vraća najveću apsolutnu vrednost koordinate — korisno kao gruba procena skale scene |
Example
Vidi takođe