# comp.graphics.algorithms

## Subject: Re: Basic perspective/normal q

"Hans-Bernhard Broeker" wrote in message
news:4bkt8rF123r6gU1@news.dfncis.de...
> [jongware] wrote:
>
> > I know it's no good -- that's why I get substandard results. Can you
> > substantiate your comment with the required math? All inputs are as
> > mentioned: a number of x,y,z coordinates for a plane; its normal; a
camera
> > position. I guess that's all what it takes for input.
>
> If anything, it's too much. All you really need is the 'd' parameter
> for the plane's normal equation:
>
> plane = { P | P.N = d }
>
> Any of those "x,y,z coordinate" triplets should do. Call it P0,
> the reference for that plane, and the normal equation can be
> rewritten:
>
> (P-P0).N = 0
>
> The test you have to make is on the sign of the left hand side of this
> equation, with the camera position for 'P'. If it's positive, that
> means the point is on that side of the plane the normal points out,
> i.e. the plane is visible. Otherwise you're looking at it's back
> side.
>
> > I assume I'm correct in stating that if the (transformed!) z
> > coordinates are in front of the camera position the plane should be
> > visible (apart from its normal vector).
>
> No. Those (x,y,z) triplets are just examples of points in that plane.
> A random point on the plane can be *anywhere* on the viewer's z axis,
> independently of whether the plane is visible or not. That's because
> a lot of planes will be only *partly* visible. Half of any typical
> plane is behind the viewer. The only exception to this are planes
> orthogonal to the view direction.