Attention: Here be dragons
This is the latest
(unstable) version of this documentation, which may document features
not available in or compatible with released stable versions of Godot.
Checking the stable version of the documentation...
PackedFloat32Array
A packed array of 32-bit floating-point values.
Descripción
An array specifically designed to hold 32-bit floating-point values (float). Packs data tightly, so it saves memory for large array sizes.
If you need to pack 64-bit floats tightly, see PackedFloat64Array.
Note: Packed arrays are always passed by reference. To get a copy of an array that can be modified independently of the original array, use duplicate(). This is not the case for built-in properties and methods. In these cases the returned packed array is a copy, and changing it will not affect the original value. To update a built-in property of this type, modify the returned array and then assign it to the property again.
Note: In a boolean context, a packed array will evaluate to false if it's empty. Otherwise, a packed array will always evaluate to true.
Nota
Hay diferencias notables cuando usa esta API con C#. Véase Diferencias de la API de C# con GDScript para más información.
Constructores
PackedFloat32Array(from: Array) |
Métodos
void |
append_array(array: PackedFloat32Array) |
void |
clear() |
duplicate() const |
|
void |
|
is_empty() const |
|
void |
|
void |
reverse() |
void |
|
size() const |
|
void |
sort() |
to_byte_array() const |
Operadores
operator !=(right: PackedFloat32Array) |
|
operator +(right: PackedFloat32Array) |
|
operator ==(right: PackedFloat32Array) |
|
operator [](index: int) |
Descripciones de Constructores
PackedFloat32Array PackedFloat32Array() 🔗
Construye un PackedInt64Array vacío.
PackedFloat32Array PackedFloat32Array(from: PackedFloat32Array)
Construye un nuevo PackedFloat32Array como copia del PackedFloat32Array dado.
PackedFloat32Array PackedFloat32Array(from: Array)
Construye un nuevo PackedFloat32Array. Opcionalmente, puedes pasar un Array genérico que será convertido.
Descripciones de Métodos
Concatena un elemento al final del array (alias de push_back()).
void append_array(array: PackedFloat32Array) 🔗
Añade un PackedFloat32Array al final de este array.
int bsearch(value: float, before: bool = true) const 🔗
Encuentra el índice de un valor existente (o el índice de inserción que mantiene el orden de clasificación, si el valor aún no está presente en el array) utilizando la búsqueda binaria. Opcionalmente, se puede pasar un especificador before. Si es false, el índice devuelto aparece después de todas las entradas existentes del valor en el array.
Nota: Llamar a bsearch() en un array no ordenado resulta en un comportamiento inesperado.
Nota: @GDScript.NAN no se comporta igual que otros números. Por lo tanto, los resultados de este método pueden no ser precisos si se incluyen NaN.
void clear() 🔗
Limpia el array. Esto es equivalente a usar resize() con un tamaño de 0.
int count(value: float) const 🔗
Devuelve el número de veces que un elemento está en el array.
Nota: @GDScript.NAN no se comporta igual que otros números. Por lo tanto, los resultados de este método pueden no ser precisos si se incluyen NaN.
PackedFloat32Array duplicate() const 🔗
Creates a copy of the array, and returns it.
Elimina la primera aparición de un valor del array y devuelve true. Si el valor no existe en el array, no pasa nada y se devuelve false. Para eliminar un elemento por índice, usa remove_at() en su lugar.
Nota: @GDScript.NAN no se comporta igual que otros números. Por lo tanto, los resultados de este método pueden no ser precisos si se incluyen NaN.
Asigna el valor dado a todos los elementos del array. Esto normalmente se puede usar junto con resize() para crear un array con un tamaño dado y elementos inicializados.
int find(value: float, from: int = 0) const 🔗
Busca un valor en el array y devuelve su índice o -1 si no lo encuentra. Opcionalmente, se puede pasar el índice de búsqueda inicial.
Nota: @GDScript.NAN no se comporta igual que otros números. Por lo tanto, los resultados de este método pueden no ser precisos si se incluyen NaN.
Devuelve el float de 32 bits en el index dado en el array. Si index está fuera de los límites o es negativo, este método falla y devuelve 0.0.
Este método es similar (pero no idéntico) al operador []. Lo más notable es que, cuando este método falla, no pausa la ejecución del proyecto si se ejecuta desde el editor.
bool has(value: float) const 🔗
Devuelve true si el array contiene value.
Nota: @GDScript.NAN no se comporta igual que otros números. Por lo tanto, los resultados de este método pueden no ser precisos si se incluyen NaN.
int insert(at_index: int, value: float) 🔗
Inserta un nuevo elemento en una posición determinada del array. La posición debe ser válida, o al final del array (idx == size()).
Devuelve true si el array es vacio.
bool push_back(value: float) 🔗
Concatena un elemen al final del array.
Elimina un elemento del array por indice.
Establece el tamaño del array. Si el array aumenta de tamaño, reserva elementos al final del array. Si el array se encoge, trunca el array al nuevo tamaño. Llamar a resize() una vez y asignar los nuevos valores es más rápido que añadir nuevos elementos uno por uno.
Devuelve @GlobalScope.OK si tiene éxito, o una de las siguientes constantes Error si este método falla: @GlobalScope.ERR_INVALID_PARAMETER si el tamaño es negativo, o @GlobalScope.ERR_OUT_OF_MEMORY si las asignaciones fallan. Usa size() para encontrar el tamaño real del array después del redimensionamiento.
void reverse() 🔗
Invierte el orden de los elementos en el array.
int rfind(value: float, from: int = -1) const 🔗
Busca el array en orden inverso. Opcionalmente, se puede pasar un índice de inicio de búsqueda. Si es negativo, el índice de inicio se considera relativo al final del array.
Nota: @GDScript.NAN no se comporta igual que otros números. Por lo tanto, los resultados de este método pueden no ser precisos si se incluyen NaNs.
void set(index: int, value: float) 🔗
Cambia el real en el índice dado.
Devuelve el numer de elementos en el array.
PackedFloat32Array slice(begin: int, end: int = 2147483647) const 🔗
Devuelve la porción del PackedFloat32Array, desde begin (inclusivo) hasta end (exclusivo), como un nuevo PackedFloat32Array.
El valor absoluto de begin y end se ajustará al tamaño del array, por lo que el valor predeterminado para end hace que se corte al tamaño del array por defecto (es decir, arr.slice(1) es una abreviatura de arr.slice(1, arr.size())).
Si begin o end son negativos, serán relativos al final del array (es decir, arr.slice(0, -2) es una abreviatura de arr.slice(0, arr.size() - 2)).
void sort() 🔗
Ordena los elementos del array en orden ascendente.
Nota: @GDScript.NAN no se comporta igual que otros números. Por lo tanto, los resultados de este método pueden no ser precisos si se incluyen NaN.
PackedByteArray to_byte_array() const 🔗
Devuelve una copia de los datos convertidos a un PackedByteArray, donde cada elemento ha sido codificado como 4 bytes.
El tamaño del nuevo array será float32_array.size() * 4.
Descripciones de Operadores
bool operator !=(right: PackedFloat32Array) 🔗
Devuelve true si los contenidos de los arrays difieren.
PackedFloat32Array operator +(right: PackedFloat32Array) 🔗
Devuelve un nuevo PackedFloat32Array con el contenido de right añadido al final de este array. Para un mejor rendimiento, considera usar append_array() en su lugar.
bool operator ==(right: PackedFloat32Array) 🔗
Devuelve true si los contenidos de ambos arrays son iguales, es decir, tienen todos los floats iguales en los índices correspondientes.
float operator [](index: int) 🔗
Devuelve el float en el índice index. Los índices negativos pueden utilizarse para acceder a los elementos empezando por el final. El uso de un índice fuera de los límites del array provocará un error.
Ten en cuenta que el tipo float es de 64 bits, a diferencia de los valores almacenados en el array.