# Two different types of planes?

This topic is 2984 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

## Recommended Posts

My understanding is, there's two different types of 3D planes. One uses a triangle (A, B, C) and then the plane lies along the triangle. That's comprehensible. The other uses a Normal and Distance along that normal? Which doesn't seem to make sense, as all the results would be perpendicular to the (0, 0, 0) vector.

I must be missing something. Google doesn't want to cough up an info page, either (although my search skills are notoriously lousy).

Thanks.

Edit: Wait, there's one defined by a triangle, one defined by a position and normal...Then why does SlimDX define theirs by a Normal vector and scalar Distance?

##### Share on other sites
To clarify, I'd be asking what's up with SlimDX's Plane class, because it doesn't match the data structures I know (three points or position and normal).

##### Share on other sites
Quote:
 Original post by Narf the MouseEdit: Wait, there's one defined by a triangle, one defined by a position and normal...Then why does SlimDX define theirs by a Normal vector and scalar Distance?
If you represent a plane as a position and a normal, you are picking an arbitrary position on the plane. Given that the plane is by definition infinite, you can find a point on the plane so that it lies along the normal from the origin (i.e. the closest point on the plane to the origin). If you take that point, you can just calculate the distance between the point and the origin, since you can find the point again by multiplying the normal by the distance.

As such, it is just an alternate way to store a plane in point + normal form, and it saves a few bytes of data, as well as simplifying a few plane operations.

##### Share on other sites
Quote:
Original post by swiftcoder
Quote:
 Original post by Narf the MouseEdit: Wait, there's one defined by a triangle, one defined by a position and normal...Then why does SlimDX define theirs by a Normal vector and scalar Distance?
If you represent a plane as a position and a normal, you are picking an arbitrary position on the plane. Given that the plane is by definition infinite, you can find a point on the plane so that it lies along the normal from the origin (i.e. the closest point on the plane to the origin). If you take that point, you can just calculate the distance between the point and the origin, since you can find the point again by multiplying the normal by the distance.

As such, it is just an alternate way to store a plane in point + normal form, and it saves a few bytes of data, as well as simplifying a few plane operations.

Ah, thanks. Makes sense.

1. 1
2. 2
Rutin
20
3. 3
khawk
16
4. 4
A4L
14
5. 5

• 11
• 16
• 26
• 10
• 11
• ### Forum Statistics

• Total Topics
633756
• Total Posts
3013707
×