Two convex objects do not overlap iff there exists a line (called axis) onto which the two objects' projections do not overlap.
SAT suggests an algorithm for testing whether two convex solids intersect or not.
Regardless of dimensionality, the separating axis is always a line. For example, in 3D, the space is separated by planes, but the separating axis is perpendicular to the separating plane.
The separating axis theorem can be applied for fast collision detection between polygon meshes. Each face's normal or other feature directions is used as a separating axis, as well as the cross products. Note that this yields possible separating axes, not separating lines/planes.
If the cross products were not used, certain edge-on-edge non-colliding cases would be treated as colliding. For increased efficiency, parallel axes may be calculated as a single axis.
timo (2021). test intersection of 2 rectangles (https://www.mathworks.com/matlabcentral/fileexchange/43230-test-intersection-of-2-rectangles), MATLAB Central File Exchange. Retrieved .
MATLAB Release Compatibility
Platform CompatibilityWindows macOS Linux
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!Start Hunting!