love.graphics.intersectScissor

Available since LÖVE 0.10.0
This function is not supported in earlier versions.

Sets the scissor to the rectangle created by the intersection of the specified rectangle with the existing scissor. If no scissor is active yet, it behaves like love.graphics.setScissor.

The scissor limits the drawing area to a specified rectangle. This affects all graphics calls, including love.graphics.clear.

The dimensions of the scissor is unaffected by graphical transformations (translate, scale, ...).

Function

Synopsis

love.graphics.intersectScissor( x, y, width, height )

Arguments

number x
The x-coordinate of the upper left corner of the rectangle to intersect with the existing scissor rectangle.
number y
The y-coordinate of the upper left corner of the rectangle to intersect with the existing scissor rectangle.
number width
The width of the rectangle to intersect with the existing scissor rectangle.
number height
The height of the rectangle to intersect with the existing scissor rectangle.

Returns

Nothing.

Examples

Limit the drawing area incrementally

function love.draw()
	local windowWidth, windowHeight = love.graphics.getDimensions()
	local halfWidth  = windowWidth/2
	local halfHeight = windowHeight/2

	love.graphics.setScissor(0,0, halfWidth,windowHeight)
	love.graphics.clear(0, 0, .5) -- Affects the left side.
	love.graphics.intersectScissor(0,0, windowWidth,halfHeight)
	love.graphics.circle("fill", halfWidth,halfHeight, 100) -- Affects the top left quadrant.
end

See Also

Other Languages