Difference between revisions of "DistanceBasedCollision"

(Woooo....)
 
(Changed a few things)
Line 1: Line 1:
 
Another way of detecting collisions. This type works perfectly with circles.
 
Another way of detecting collisions. This type works perfectly with circles.
 
It checks if the distance of one object to the other is less than the sum of their radii(plural of radius.)
 
It checks if the distance of one object to the other is less than the sum of their radii(plural of radius.)
 +
 +
Variable Definitions : ax, ay = circleA's coordinates; bx, by = circleB's coordinates;ar, br = circleA's, and circleB's radii, respectively
  
 
<source lang="lua">
 
<source lang="lua">
function checkDistanceCollision(ax, ay, bx, bu, ar, br)
+
function checkCircularCollision(ax, ay, bx, bu, ar, br)
 
local dx = bx - ax
 
local dx = bx - ax
 
local dy = by - ay
 
local dy = by - ay

Revision as of 06:32, 28 September 2012

Another way of detecting collisions. This type works perfectly with circles. It checks if the distance of one object to the other is less than the sum of their radii(plural of radius.)

Variable Definitions : ax, ay = circleA's coordinates; bx, by = circleB's coordinates;ar, br = circleA's, and circleB's radii, respectively

function checkCircularCollision(ax, ay, bx, bu, ar, br)
	local dx = bx - ax
	local dy = by - ay
	local dist = math.sqrt(dx * dx + dy * dy)
	if dist < ar + br then
		return true
	else
		return false
	end
end

Contributors


Other Languages