Difference between revisions of "BezierCurve:evaluate"
(→Example) |
(A better example. (The old example did exactly what BezierCurve:render is for.)) |
||
Line 14: | Line 14: | ||
{{param|number|x|x coordinate of the curve at parameter t.}} | {{param|number|x|x coordinate of the curve at parameter t.}} | ||
{{param|number|y|y coordinate of the curve at parameter t.}} | {{param|number|y|y coordinate of the curve at parameter t.}} | ||
− | === | + | == Examples == |
− | + | ||
+ | === Make a circle follow a curve === | ||
<source lang="lua"> | <source lang="lua"> | ||
− | + | local curve = love.math.newBezierCurve({125,125, 125,225, 175,125, 225,125}) | |
− | local | + | |
− | + | function love.draw() | |
− | + | local time = love.timer.getTime() | |
− | local t = | + | local loopTime = 4 |
− | + | local t = (time / loopTime) % 1 | |
− | local x, y = | + | local x, y = curve:evaluate(t) |
− | + | ||
− | + | love.graphics.circle("fill", x, y, 8) | |
+ | love.graphics.line(curve:render()) | ||
end | end | ||
− | |||
</source> | </source> | ||
Revision as of 08:20, 23 November 2021
Available since LÖVE 0.9.0 |
This function is not supported in earlier versions. |
Evaluate Bézier curve at parameter t. The parameter must be between 0 and 1 (inclusive).
This function can be used to move objects along paths or tween parameters. However it should not be used to render the curve, see BezierCurve:render for that purpose.
Contents
Function
Synopsis
x,y = BezierCurve:evaluate(t)
Arguments
number t
- Where to evaluate the curve.
Returns
number x
- x coordinate of the curve at parameter t.
number y
- y coordinate of the curve at parameter t.
Examples
Make a circle follow a curve
local curve = love.math.newBezierCurve({125,125, 125,225, 175,125, 225,125})
function love.draw()
local time = love.timer.getTime()
local loopTime = 4
local t = (time / loopTime) % 1
local x, y = curve:evaluate(t)
love.graphics.circle("fill", x, y, 8)
love.graphics.line(curve:render())
end
See Also
Other Languages
Dansk –
Deutsch –
English –
Español –
Français –
Indonesia –
Italiano –
Lietuviškai –
Magyar –
Nederlands –
Polski –
Português –
Română –
Slovenský –
Suomi –
Svenska –
Türkçe –
Česky –
Ελληνικά –
Български –
Русский –
Српски –
Українська –
עברית –
ไทย –
日本語 –
正體中文 –
简体中文 –
Tiếng Việt –
한국어
More info