🧭 Rotator
A container for rotation information (Pitch, Yaw, Roll). All rotation values are stored in degrees.
info
Les Rotator sont compressés en interne et automatiquement, ce qui réduit leur taille dans le réseau jusqu'à 90 %. Leurs composants sont généralement compressés en 1 octets chacun (à quelques exceptions où nous avons besoin de plus de précision).
🎒 Examples
local new_rotator = Rotator(-90, 153, 24.5)
🛠 Constructors
Default Constructor
No description provided
local my_rotator = Rotator(pitch?, yaw?, roll?)
🧽 Properties
| Type | Name | Description |
|---|---|---|
| number | Pitch | Rotation autour de l'axe de droite (autour de l'axe Y), regarder vers le haut et vers le bas (0=Tête droite, +Haute, -Bas) |
| number | Yaw | Rotation autour de l'axe haut (autour de l'axe Z), Course en cercles 0=Est, +Nord, -Sud. |
| number | Roll | Rotation autour de l'axe avant (autour de l'axe X), inclinaison de la tête, 0=Droite, +sens horaire, -sens horaire inversé. |
🦠 Functions
info
This structure supports +, -, * and tostring operations.
| Returns | Name | Description | |
|---|---|---|---|
| Vector | GetForwardVector | Récupère le vecteur de direction de l'unité avant (X) de ce composant, dans l'espace. | |
| Vector | GetRightVector | Récupère le vecteur de direction de l'unité de droite (Y) de ce composant, dans l'espace. | |
| Vector | GetUpVector | Récupère le vecteur de direction de l'unité du haut (Z) de ce composant, dans l'espace. | |
| Vector | RotateVector | Faire pivoter un vecteur tourné par ce Rotator. | |
Normalize | Normalise, enlève tout enroulement et crée la rotation « la plus courte ». | ||
| Vector | UnrotateVector | Retourne le vecteur tourné par l'inverse de ce Rotator. | |
| Quat | Quaternion | Obtenir la rotation en quaternion. | |
| Rotator | GetNormalized | Retourne un nouveau Rotator normalisé. | |
| boolean | IsNearlyZero | Vérifie si le vecteur est proche de zéro dans une tolérance spécifiée | |
| boolean | IsZero | Vérifie si tous les composants du vecteur sont exactement égaux à zéro |
GetForwardVector
Récupère le vecteur de direction de l'unité avant (X) de ce composant, dans l'espace.
local ret = my_rotator:GetForwardVector()
Returns
| Type | Description |
|---|---|
| Vector | the forward direction |
GetRightVector
Récupère le vecteur de direction de l'unité de droite (Y) de ce composant, dans l'espace.
local ret = my_rotator:GetRightVector()
Returns
| Type | Description |
|---|---|
| Vector | the right direction |
GetUpVector
Récupère le vecteur de direction de l'unité du haut (Z) de ce composant, dans l'espace.
local ret = my_rotator:GetUpVector()
Returns
| Type | Description |
|---|---|
| Vector | the up direction |
RotateVector
Faire pivoter un vecteur tourné par ce Rotator.
local ret = my_rotator:RotateVector(vector)
Parameters
| Type | Parameter | Default | Description |
|---|---|---|---|
| Vector | vector | Required parameter | the vector to rotate by the Rotator |
Returns
| Type | Description |
|---|---|
| Vector | the rotated vector |
Normalize
Normalise, enlève tout enroulement et crée la rotation « la plus courte ».
my_rotator:Normalize()
UnrotateVector
Retourne le vecteur tourné par l'inverse de ce Rotator.
local ret = my_rotator:UnrotateVector(vector)
Parameters
| Type | Parameter | Default | Description |
|---|---|---|---|
| Vector | vector | Required parameter | The vector to rotate by the inverse of the Rotator |
Returns
| Type | Description |
|---|---|
| Vector | the unrotated vector |
Quaternion
Obtenir la rotation en quaternion.
local ret = my_rotator:Quaternion()
Returns
| Type | Description |
|---|---|
| Quat | the rotation as a quaternion |
GetNormalized
Retourne un nouveau Rotator normalisé.
local ret = my_rotator:GetNormalized()
Returns
| Type | Description |
|---|---|
| Rotator | the normalized Rotator |
IsNearlyZero
Vérifie si le vecteur est proche de zéro dans une tolérance spécifiée
local ret = my_rotator:IsNearlyZero(tolerance?)
Parameters
| Type | Parameter | Default | Description |
|---|---|---|---|
| number | tolerance? | 0.000001 | Tolerance to check |
Returns
| Type | Description |
|---|---|
| boolean | whether the rotator is nearly zero |
IsZero
Vérifie si tous les composants du vecteur sont exactement égaux à zéro
local ret = my_rotator:IsZero()
Returns
| Type | Description |
|---|---|
| boolean | whether the rotator is exactly zero |
🗿 Static Functions
Random
Génère une rotation aléatoire, avec un Roll aléatoire facultatif
local ret = Rotator.Random(roll?, min?, max?)
Parameters
| Type | Parameter | Default | Description |
|---|---|---|---|
| boolean | roll? | false | Whether to use a random roll in the rotator, otherwise uses 0 for roll |
| float | min? | -180 | Minimum value |
| float | max? | 180 | Maximum value |
Returns
| Type | Description |
|---|---|
| Rotator | the random rotation |