Yuka js库中的SAT(分离轴定理)模块中的intersects函数用于检测两个对象是否相交。
intersects( object1, object2 )
object1
:表示第一个对象,可以是矩形或多边形对象。object2
:表示第二个对象,可以是矩形或多边形对象。如果两个对象相交,则返回true
,否则返回false
。
import { intersects } from 'yuka';
const rect1 = { x: 0, y: 0, width: 10, height: 10 };
const rect2 = { x: 5, y: 5, width: 10, height: 10 };
const result = intersects( rect1, rect2 );
console.log( result ); // true
该函数实现依据SAT,通过计算对象在各个轴上的投影,来检测是否存在重叠部分。如果两个对象投影到同一轴上的投影区间都有交集,则说明两个对象相交。