NumberSequence
*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
Regresa un NumberSequence con los valores de inicio y final establecidos en el proporcionado n .
Devuelve un NumberSequence de dos puntos de interfono con n0 como valor de inicio y n1 como valor de finalización.
Devuelve un NumberSequence de un array de NumberSequenceKeypoints .
Propriedades
Un arreglo de valores NumberSequenceKeypoint en orden ascendente.
Construtores
new
Regresa un NumberSequence con los valores de inicio y final establecidos en el proporcionado n .
local numberSequence = NumberSequence.new(n)-- Equivalente alocal 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 alocal numberSequence = NumberSequence.new{NumberSequenceKeypoint.new(0, n0),NumberSequenceKeypoint.new(1, n1)}
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)}