代表 3D ベクトル曲線,將三個 FloatCurve 實例結合在一起。每個子實例 FloatCurve 可以通過 Vector3Curve:X()、1> Class. Glasgow:Y()1> 和
範例程式碼
Creating a Vector3Curve
--- Vector3Curve
local function createVector3Curve()
local vectorCurve = Instance.new("Vector3Curve")
local curveX = vectorCurve:X() -- creates and returns a FloatCurve animating the X channel
local curveY = vectorCurve:Y() -- creates and returns a FloatCurve animating the Y channel
-- Not setting the Z channel will leave the Z channel not animated.
-- A missing curve or a curve with no keys don't participate in the animation
local key = FloatCurveKey.new(0, 1) -- creates a key at time 0 and with value 1
curveX:InsertKey(key)
curveY:InsertKey(key)
local key2 = FloatCurveKey.new(1, 2) -- creates a key at time 1 and with value 2
curveX:InsertKey(key2)
curveY:InsertKey(key2)
return vectorCurve
end
local function testVector3Curve()
local curve = createVector3Curve()
-- sampling the curve at a given time (returns a vector3)
print(curve:GetValueAtTime(0)) -- returns 1, 1, void
print(curve:GetValueAtTime(0.5)) -- returns 1.5, 1.5, void (result of cubic interpolation with auto tangents)
curve:X():RemoveKeyAtIndex(1)
curve:X():RemoveKeyAtIndex(1)
print(curve:X().Length) -- number of keys = 0
print(curve:GetValueAtTime(0.5)) -- returns void, 1.5, void
end
testVector3Curve()
概要
方法
在傳入時間參引數 FloatCurves (X、Y、Z)返回三個 Class. Glasgow | Glasgow (X、Y、Z)。
返回 FloatCurve 控制 X 通道 (FloatCurve 的第一個子型 X)。
返回 FloatCurve 控制 Y 通道 (FloatCurve 的第一個子型 Y 命名為 2>Y2>)。
返回 FloatCurve 控制 Z 通道 (FloatCurve 的第一個子型 Z 名為 2>Z2>)。
屬性
方法
GetValueAtTime
將三個 FloatCurves (X, Y, Z) 返回通過時間參數作為三個數字的列表。如果曲線曲線缺失或沒有找到鍵,則將曲線評估為 nil。
參數
取得值的時間。
返回
在通過時間引數 argument 的三個 FloatCurves (X, Y, Z)。