three.js Sphere

2023-02-16 17:46 更新

一個球由球心和半徑所定義。

構(gòu)造函數(shù)

Sphere( center : Vector3, radius : Float )

center - 球心的位置,默認(rèn)值是一個位于(0, 0, 0)的Vector3。
radius - 球的半徑,默認(rèn)值是-1。

創(chuàng)建一個新的Sphere。

屬性

.center : Vector3

A Vector3定義了球心的位置,默認(rèn)值位于(0, 0, 0)。

.radius : Float

球的半徑,默認(rèn)值為-1。

方法

.applyMatrix4 ( matrix : Matrix4 ) : this

matrix - 將被應(yīng)用的Matrix4矩陣。

使用所傳入的Matrix4矩陣來對球進(jìn)行變換。

.clampPoint ( point : Vector3, target : Vector3 ) : Vector3

point - Vector3 將要夾取的點。
target — 結(jié)果將被復(fù)制到這個Vector3中。

從球中夾取一個點。若這一點位于球外,則將會夾取到該點球邊緣最近的點。已位于球中的點將不會受到影響。

.clone () : Sphere

返回一個新的球,新的球與這個球具有相同的center和radius。

.containsPoint ( point : Vector3 ) : Boolean

point - Vector3 要被檢查的點

檢查球體中是否包含所傳入的point點,包括球的表面。

.copy ( sphere : Sphere ) : this

復(fù)制所傳入的球的center和radius到這個球上。

.distanceToPoint ( point : Vector3 ) : Float

返回球的邊界到所傳入的point點的最近距離。 若這個點位于球內(nèi),則距離將為負(fù)值。

.expandByPoint ( point : Vector3 ) : this

point - Vector3 將被包含在球內(nèi)的點

擴(kuò)展該球的邊界以包含此點 point。

.isEmpty () : Boolean

檢查球是否為空(球半徑為負(fù)值)。半徑為 0 的球體僅包含其中心點,并不會被視為空。

.makeEmpty () : this

將該球修改為空,即中心點 center 為 (0,0,0),半徑 radius 為 -1。

.equals ( sphere : Sphere ) : Boolean

檢查這兩個球的球心與半徑是否相等。

.getBoundingBox ( target : Box3 ) : Box3

target — 結(jié)果將被復(fù)制到這個Box3中。

返回這個球的Minimum Bounding Box(最小包圍盒)。

.intersectsBox ( box : Box3 ) : Boolean

box - 將被用于測試是否與這個球有交集的Box3。

檢測這個球與所傳入的box是否有交集。

.intersectsPlane ( plane : Plane ) : Boolean

plane - 將被用于測試是否與這個球有交集的Plane。

檢測這個球與所傳入的plane是否有交集。

.intersectsSphere ( sphere : Sphere ) : Boolean

sphere - 將被用于測試是否與這個球有交集的Sphere。

檢測兩球之間是否有交集。

.set ( center : Vector3, radius : Float ) : this

center - 球心位置。
radius - 球的半徑。

設(shè)置球的center和radius屬性。
請注意此,方法使用復(fù)制的方式來設(shè)置中心值。

.setFromPoints ( points : Array, optionalCenter : Vector3 ) : this

points - 一個包含有Vector3位置的Array。
optionalCenter - 可選, Vector3 球心位置。

計算一個points數(shù)組(中的點)的最小邊界球。如果給定了optionalCenter,則它將被用作該球的球心; 否則,環(huán)繞points的包圍盒的軸心將通過計算來得到。

.translate ( offset : Vector3 ) : this

使用所給定Vector3 offset(偏移量)平移球心。

.union ( sphere : Sphere ) : this

sphere - 將與該球體即將結(jié)合的邊界球體。

擴(kuò)展此球體以包含原始球體和給定球體。

源代碼

src/math/Sphere.js


以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號