love.graphics.rotate (日本語)

二次元座標系を回転させます。

この関数を呼び出すと指定された弧度の量により原点の周囲にある座標系の回転を行うため以降の全描画操作に影響します。この変更は love.draw() の終端まで継続します。

関数

概要

love.graphics.rotate( angle )

引数

number angle
弧度による座標系の回転量。

返値

ありません。

用例

静止場面の回転

この用例では指定された点の周囲の静止場面を回転する方法を示します。常に原点の周囲で回転が行われ、回転操作の後部周囲を画面中心の原点として平行移動することにより有効な回転地点を画面中央として設定します。これは回転を与える長方形の描画および場面の回転時において、ちょうど中心にある点は不動であるという実証です。描画命令には単に画面上の大きさに依存する座標があることに注意してください。

local angle = 0

function love.draw()
	local width = love.graphics.getWidth()
	local height = love.graphics.getHeight()
	-- 弧度の角度により画面中心より周辺を回転します。
	love.graphics.translate(width/2, height/2)
	love.graphics.rotate(angle)
	love.graphics.translate(-width/2, -height/2)
	--  中心から少し離れたところに白色の長方形を描画します。
	love.graphics.setColor(0xff, 0xff, 0xff)
	love.graphics.rectangle('fill', width/2-100, height/2-100, 300, 400)
	-- 5ピクセル幅の青い点を中心に描画します。
	love.graphics.setPointSize(5)
	love.graphics.setColor(0, 0, 0xff)
	love.graphics.point(width/2, height/2)
end

function love.update(dt)
	love.timer.sleep(.01)
	angle = angle + dt * math.pi/2
	angle = angle % (2*math.pi)
end

関連


そのほかの言語