NumberSequence

Mostrar obsoleto

*Este conteúdo é traduzido por IA (Beta) e pode conter erros. Para ver a página em inglês, clique aqui.

El tipo de datos NumberSequence representa una serie de valores numéricos desde 0 a 1 . Los valores numéricos se expresan usando el introducir1> Datatype.NumberSequenciaKeypoint1> . Este tipo se usa en propiedades como 4>

Equidad

Dos objetos NumberSequence son equivalentes solo si los valores de sus NumberSequenceKeypoint son equivalentes, incluso si ambos darían lugar en gráficos similares.

Evaluación

El tipo NumberSequence no tiene un método incorporado para obtener el valor en un momento/punto específico porque los puntos de interfono pueden tener envolturas aleatorias. Sin embargo, si se supone que los valores de su punto de interfono son todos 0, puede usar la siguiente función para evaluar en un momento específico.


local function evalNumberSequence(sequence: NumberSequence, time: number)
-- Si el tiempo es 0 o 1, devuelve el primer o último valor respectivamente
if time == 0 then
return sequence.Keypoints[1].Value
elseif time == 1 then
return sequence.Keypoints[#sequence.Keypoints].Value
end
-- De lo contrario, pasa a través de cada par de puntos de clave secuencial
for i = 1, #sequence.Keypoints - 1 do
local currKeypoint = sequence.Keypoints[i]
local nextKeypoint = sequence.Keypoints[i + 1]
if time >= currKeypoint.Time and time < nextKeypoint.Time then
-- Calcular la distancia entre alfa y los puntos
local alpha = (time - currKeypoint.Time) / (nextKeypoint.Time - currKeypoint.Time)
-- Devuelva el valor entre los puntos utilizando alpha
return currKeypoint.Value + (nextKeypoint.Value - currKeypoint.Value) * alpha
end
end
end
local numberSequence = NumberSequence.new{
NumberSequenceKeypoint.new(0, 0),
NumberSequenceKeypoint.new(0.5, 1),
NumberSequenceKeypoint.new(1, 0),
}
print(evalNumberSequence(numberSequence, 0.65)) --> 0.7

Resumo

Construtores

Propriedades

Construtores

new

Regresa un NumberSequence con los valores de inicio y final establecidos en el proporcionado n .


local numberSequence = NumberSequence.new(n)
-- Equivalente a
local numberSequence = NumberSequence.new{
NumberSequenceKeypoint.new(0, n),
NumberSequenceKeypoint.new(1, n)
}

Parâmetros

new

Devuelve un NumberSequence de dos puntos de interfono con n0 como valor de inicio y n1 como valor de finalización.


local numberSequence = NumberSequence.new(n0, n1)
-- Equivalente a
local numberSequence = NumberSequence.new{
NumberSequenceKeypoint.new(0, n0),
NumberSequenceKeypoint.new(1, n1)
}

Parâmetros

n0: number
n1: number

new

Devuelve un NumberSequence de un arreglo de NumberSequenceKeypoints . Los keypoints deben ser proporcionados en un orden de tiempo no descendente. Al menos dos keypoints deben ser proporcionados, y deben tener un valor de tiempo de 0 (primer) y


local numberSequence = NumberSequence.new{
NumberSequenceKeypoint.new(0, 0),
NumberSequenceKeypoint.new(0.5, 0.5, 0.25),
NumberSequenceKeypoint.new(1, 1)
}

Parâmetros

Keypoints: Array

Propriedades

Keypoints

Un matriz que contiene valores para el NumberSequenceKeypoint .