Classe che rappresenta un [link:https://en.wikipedia.org/wiki/Vector_space vettore] 3D. Un vettore 3D è una tripletta ordinata di numeri (etichettati con x, y e z), che può essere utilizzata per rappresentare una serie di cose, come:
Ci sono altre cose che possono essere rappresentate da un vettore 3D, come i vettori di quantità di moto e così via, tuttavia questi sono gli usi comuni in three.js.
L'iterazione di un'istanza [name] produrrà i suoi componenti `(x, y, z)` nell'ordine corrispondente.
const a = new THREE.Vector3( 0, 1, 0 );
// nessun argomento; sarà inizializzato a (0, 0, 0)
const b = new THREE.Vector3( );
const d = a.distanceTo( b );
[page:Float x] - il valore x di questo vettore. Il valore predefinito è `0`.
[page:Float y] - il valore y di questo vettore. Il valore predefinito è `0`.
[page:Float z] - il valore z di questo vettore. Il valore predefinito è `0`.
Crea un nuovo [name].
Flag di sola lettura per verificare che l'oggetto dato sia di tipo [name].
Aggiunge [page:Vector3 v] a questo vettore.
Aggiunge il valore scalare [page:Float s] ai valori [page:.x x], [page:.y y] e [page:.z z] di questo vettore.
Aggiunge il multiplo di [page:Vector3 v] e [page:Float s] a questo vettore.
Imposta questo vettore a [page:Vector3 a] + [page:Vector3 b].
[page:Vector3 axis] - Un [page:Vector3] normalizzato.
[page:Float angle] - Un angolo in radianti.
Applica una rotazione specifica da un asse e un angolo a questo vettore.
Applica la trasformazione di Eulero a questo vettore convertendo l'oggetto [page:Euler Eulero] a un [page:Quaternion Quaternione] e applicandolo.
Moltiplica questo vettore per [page:Matrix3 m]
Moltiplica questo vettore (con un 1 implicito come quarto componente) per m, e divide per prospettiva.
Moltiplica questo vettore per la matrice normale [page:Matrix3 m] e normalizza il risultato.
Applica una trasformata [page:Quaternion Quaternione] a questo vettore.
Restituisce l'angolo tra questo vettore e il vettore [page:Vector3 v] in radianti.
I componenti [page:.x x], [page:.y y] e [page:.z z] di questo vettore vengono arrotondati per eccesso al valore intero più vicino.
[page:Vector3 min] - i valori minimi [page:.x x], [page:.y y] e [page:.z z].
[page:Vector3 max] - i valori massimi [page:.x x], [page:.y y] e [page:.z z] nell'intervallo desiderato.
Se il valore x, y o z di questo vettore è maggiore del valore di x, y o z del vettore massimo, verrà sostuito dal corrispondente valore.
Se il valore x, y o z di questo vettore è minore del valore di x, y o z del vettore minimo, verrà sostuito dal corrispondente valore.
[page:Float min] - il valore minimo a cui verrà fissata la lunghezza.
[page:Float max] - il valore massimo a cui verrà fissata la lunghezza.
Se la lunghezza di questo vettore è maggiore del valore massimo, il vettore verrà sostituito in modo che la sua lunghezza sia il valore massimo.
Se la lunghezza di questo vettore è minore del valore minimo, il vettore verrà sostituito in modo che la sua lunghezza sia il valore minimo.
[page:Float min] - il valore minimo a cui verranno fissati i componenti.
[page:Float max] - il valore massimo a cui verranno fissati i componenti.
Se i valori di x, y o z di questo vettore sono maggiori del valore massimo, verranno sostuiti dal valore massimo.
Se i valori di x, y o z di questo vettore sono minori del valore minimo, verranno sostuiti dal valore minimo.
Restituisce un nuovo Vector3 con gli stessi valori [page:.x x], [page:.y y] e [page:.z z] di questo.
Copia i valori delle proprietà [page:.x x], [page:.y y] e [page:.z z] del vettore passato in questo vettore.
Imposta questo vettore come [link:https://en.wikipedia.org/wiki/Cross_product prodotto vettoriale] di se stesso e [page:Vector3 v].
Imposta questo vettore come [link:https://en.wikipedia.org/wiki/Cross_product prodotto vettoriale] di [page:Vector3 a] e [page:Vector3 b].
Calcola la distanza da questo vettore e [page:Vector3 v].
Calcola la [link:https://en.wikipedia.org/wiki/Taxicab_geometry distanza Manhattan] tra questo vettore e [page:Vector3 v].
Calcola la distanza al quadrato da questo vettore a [page:Vector3 v]. Se stai semplicemente confrontando la distanza con un'altra distanza, dovresti invece confrontare la distanza al quadrato poiché è leggermente più efficiente da calcolare.
Divide questo vettore per [page:Vector3 v].
Divide questo vettore per lo scalare [page:Float s].
Calcola il [link:https://en.wikipedia.org/wiki/Dot_product prodotto scalare] di questo vettore e [page:Vector3 v].
Restituisce `true` se i componenti di questo vettore e [page:Vector3 v] sono strettamente uguali; `false` altrimenti.
I componenti di questo vettore vengono arrotondati per difetto al valore intero più vicino.
[page:Array array] - l'array sorgente.
[page:Integer offset] - (opzionale) l'offset nell'array. Il valore predefinito è 0.
Imposta il valore [page:.x x] di questo vettore su `array[ offset + 0 ]`, il valore [page:.y y] su `array[ offset + 1 ]`
e il valore [page:.z z] su `array[ offset + 2 ]`.
[page:BufferAttribute attribute] - l'attributo sorgente.
[page:Integer index] - l'indice nell'attributo.
Imposta i valori [page:.x x], [page:.y y] e [page:.z z] di questo vettore nell'[page:BufferAttribute attributo].
[page:Integer index] - 0, 1 o 2.
Se l'indice è uguale a 0 restituisce il valore [page:.x x].
Se l'indice è uguale a 1 restituisce il valore [page:.y y].
Se l'indice è uguale a 2 restituisce il valore [page:.z z].
Calcola la [link:https://en.wikipedia.org/wiki/Euclidean_distance lunghezza Euclidea] (lunghezza in linea retta) da (0, 0, 0) a (x, y, z).
Calcola la [link:http://en.wikipedia.org/wiki/Taxicab_geometry lunghezza Manhattan] di questo vettore.
Calcola il quadrato della [link:https://en.wikipedia.org/wiki/Euclidean_distance lunghezza Euclidea] (lunghezza in linea retta) da (0, 0, 0) a (x, y, z). Se stai comparando le lunghezze dei vettori, dovresti invece confrontare la lunghezza quadrata poiché è leggermente più efficiente da calcolare.
[page:Vector3 v] - [page:Vector3] verso in cui interpolare.
[page:Float alpha] - fattore di interpolazione, tipicamente nell'intervallo chiuso `[0, 1]`.
Interpola linearmente tra questo vettore e [page:Vector3 v], dove alfa è la distanza percentuale
lungo la linea - alfa = 0 sarà questo vettore e alfa = 1 sarà [page:Vector3 v].
[page:Vector3 v1] - il [page:Vector3] iniziale.
[page:Vector3 v2] - [page:Vector3] verso cui interpolare.
[page:Float alpha] - fattore di interpolazione, tipicamente nell'intervallo chiuso `[0, 1]`.
Imposta questo vettore per essere il vettore lineare interpolato tra [page:Vector3 v1] e
[page:Vector3 v2] dove alfa è la distanza percentuale lungo la linea che collega i due vettori
- alfa = 0 sarà [page:Vector3 v1] e alfa = 1 sarà [page:Vector3 v2].
Se il valore x, y o z di questo vettore è minore del valore x, y o z di [page:Vector3 v], sostituisce questo valore con il valore massimo corrispondente.
Se il valore x, y o z di questo vettore è maggiore del valore x, y o z di [page:Vector3 v], sostituisce questo valore con il valore minimo corrispondente.
Moltiplica questo vettore per [page:Vector3 v].
Moltiplica questo vettore per lo scalare [page:Float s].
Imposta questo vettore uguale a [page:Vector3 a] * [page:Vector3 b], dal punto di vista dei componenti.
Inverte questo vettore - cioè imposta x = -x, y = -y e z = -z.
Converte questo vettore in un [link:https://en.wikipedia.org/wiki/Unit_vector vettore unitario] - cioè, lo imposta uguale ad un vettore con la stessa direzione di questo, ma con [page:.length lunghezza] 1.
[page:Camera camera] — telecamera da utilizzare nella proiezione.
Proietta questo vettore dallo spazio world nello spazio delle coordinate normalizzate del dispositivo (NDC) della telecamera.
[page:Vector3 planeNormal] - Un vettore che rappresenta un piano normale.
[link:https://en.wikipedia.org/wiki/Vector_projection Proietta] questo vettore su un piano sottraendo
questo vettore proiettato sulla normale del piano da questo vettore.
[link:https://en.wikipedia.org/wiki/Vector_projection Proietta] questo vettore in [page:Vector3 v].
[page:Vector3 normal] - la normale al piano riflettente.
Riflette questo vettore fuori dal piano ortogonale alla [page:Vector3 normale]. Si suppone che la normale
abbia lunghezza unitaria.
I componenti di questo vettore vengono arrotondati al valore intero più vicino.
I componenti di questo vettore vengono arrotondati verso zero (per eccesso se negativo, per difetto se positivo) a un valore intero.
Imposta i componenti [page:.x x], [page:.y y] e [page:.z z] di questo vettore.
[page:Integer index] - 0, 1 o 2.
[page:Float value] - [page:Float]
Se l'indice è uguale a 0 imposta [page:.x x] a [page:Float value].
Se l'indice è uguale a 1 imposta [page:.y y] a [page:Float value].
Se l'indice è uguale a 2 imposta [page:.z z] a [page:Float value].
Imposta questo vettore dalle coordinate cilindriche [page:Cylindrical c].
Imposta questo vettore dalle coordinate cilindriche [page:Cylindrical radius], [page:Cylindrical theta] and [page:Cylindrical y].
Imposta i componenti [page:.x x], [page:.y y] e [page:.z z] di questo vettore dai componenti x, y, e z dell'[page:Euler angolo di Eulero] specificato.
Imposta i componenti [page:.x x], [page:.y y] e [page:.z z] di questo vettore dalla colonna [page:Integer indice] della [page:Matrix4 matrice].
Imposta i componenti [page:.x x], [page:.y y] e [page:.z z] di questo vettore dalla colonna [page:Integer indice] della [page:Matrix4 matrice].
Imposta questo vettore sugli elementi di posizione della [link:https://en.wikipedia.org/wiki/Transformation_matrix matrice di trasformazione] [page:Matrix4 m].
Imposta questo vettore sugli elementi scale della [link:https://en.wikipedia.org/wiki/Transformation_matrix matrice di trasformazione] [page:Matrix4 m].
Imposta questo vettore dalle coordinate sferiche [page:Spherical s].
Imposta questo vettore dalle coordinate sferiche [page:Spherical radius], [page:Spherical phi] e [page:Spherical theta].
Imposta questo vettore ad un vettore con la stessa direzione di questo, ma con la [page:.length lunghezza] [page:Float l].
Imposta i valori [page:.x x], [page:.y y] e [page:.z z] di questo vettore tutti ugualmente allo [page:Float scalare].
Sostuisce il valore [page:.x x] di questo vettore con [page:Float x].
Sostuisce il valore [page:.y y] di questo vettore con [page:Float y].
Sostuisce il valore [page:.z z] di questo vettore con [page:Float z].
Sottrae [page:Vector3 v] da questo vettore.
Sottrae [page:Float s] dai componenti [page:.x x], [page:.y y] e [page:.z z] di questo vettore.
Imposta questo vettore a [page:Vector3 a] - [page:Vector3 b].
[page:Array array] - (opzionale) array per memorizzare questo vettore. Se non viene fornito, verrà creato un nuovo array.
[page:Integer offset] - (opzionale) offset opzionale nell'array.
Restituisce un array [x, y, z], o copia x, y e z nell'[page:Array array] fornito.
Trasforma la direzione di questo vettore da una matrice (3 x 3 in alto a sinistra sottoinsieme di [page:Matrix4 m]) e [page:.normalize normalizza] il risultato.
[page:Camera camera] — telecamera da usare nella proiezione.
Proietta questo vettore dallo spazio delle coordinate normalizzate del dispositivo (NDC) della telecamera nello spazio world.
Imposta ogni componente di questo vettore ad un valore pseudo random tra 0 e 1, escludendo 1.
Imposta questo vettore su un punto uniformemente casuale su una sfera unitaria.
[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]