If this is your first visit, be sure to
check out the FAQ by clicking the
link above. You may have to register or Login
before you can post: click the register link above to proceed. To start viewing messages,
select the forum that you want to visit from the selection below.

Determining the grids cut by a plane,formed from 3 vertices

I found out an equation of a plane,from three vertices. Now,if I have a bounding box(i.e. a large cube),How can I determine the grid positions(small cubes),where the plane cuts the large cube.

I am currently following this approach:

For each small cube center, say(Xp, Yp, Zp), calculate perpendicular distance to the plane i.e., (aXp + bYp + c*Zp + d)/ (SquareRoot Of (a^2 + b^2 + c^2)). This should be less than or equal to (length of smallCube * SquareRoot(3))/2. If this criteria,gets satisfied,then I assume my plane to cut the large cube at this small cube position.

a,b,c,d are coefficients of the plane,of the form ax+by+cz+d = 0.

I would be really glad,if someone can let me know,if I am doing something wrong (or) also,any other simple approach.

Re: Determining the grids cut by a plane,formed from 3 vertices

Originally Posted by Exploring_Programmin

any other simple approach.

These kinds of intersection tests are very common in graphics computing. There's a book called Real-Time Rendering by Akenine-Möller and others, third edition. I found an algorithm in that book on page 755 called PlaneAABBIntersect. It looks very efficient to me.

When I searched for it on the net fortunately most of the relevant text (16.10 Plane/Box Detection) showed up about here,