Need to map from cartesian R3 to a plane in R2

Click For Summary

Homework Help Overview

The discussion revolves around a programming assignment that involves mapping points from three-dimensional space (R3) to a two-dimensional plane (R2). The original poster seeks to visualize a plane defined by coplanar points in R3, requiring transformations to represent this plane in a 2D context while maintaining its orientation and properties.

Discussion Character

  • Exploratory, Conceptual clarification, Mathematical reasoning, Problem interpretation

Approaches and Questions Raised

  • Participants explore methods for determining the intersection of points with a defined plane and how to transform coordinates from 3D to 2D. There are discussions about using dot products, rotation matrices, and cross products to achieve the necessary transformations. Some participants question the clarity of the problem and the specific requirements for the plane representation.

Discussion Status

The conversation is ongoing, with participants offering various interpretations and approaches to the problem. Some guidance has been provided regarding the use of vectors and transformations, but there is no explicit consensus on the best method to proceed. The original poster continues to seek clarity on specific steps needed for the coordinate transformation.

Contextual Notes

There is a mention of constraints regarding the lack of matrix math libraries, which necessitates breaking down mathematical concepts into standard algebra. The original poster also indicates uncertainty about how to derive the necessary angles for the transformations.

Fox5
Messages
10
Reaction score
0

Homework Statement


This is actually a programming assignment, however it's very math involved.

Given a set of points in R3 (x,y,z coordinates plus a weighted value) that are known to be coplanar, I need to draw an appropriately rotated, scaled, and colored plane intersecting the data.
We know how to draw a plane in a 2-dimensional case. We interpolate the data to create a new set of vertices evenly spaced and connect them using polygons until we have a filled grid. We set the 0 component to 0, and just increment in the x and y directions.

What we need to know is how to determine where the points would lie on the 2-dimensional plane (since they are coplanar) and how to either draw the plane in place or how to rotate it from along the coordinate axis into its proper location.

We have no matrix math libraries, so all math needs to be broken down into standard algebra before we can implement (but I should be able to convert from matrix algebra to standard given the correct formula).


Homework Equations


Set of coplanar points, (x,y,z).
Can determine plane equation, aX+bY+cZ+d=0. Can get normal vector from this.
Dot product: a (dot) b = |a||b|cos(theta)


The Attempt at a Solution


Have attempted to use dot product with respect to normal vectors (1,0,0) and (0,1,0) to determine rotation axes. Also tried (1,y-y_i,z-z_i) and (x-x_i,1,z-z_i). These don't not appear to give the angles I'm looking for.

The book had a derivation for a rotation about the origin in 2d that gives the transforms
w_1 = xcos(theta) - ysin(theta)
w_2 = xsin(theta) + ycos(theta)

Using a similar derivation (possibly wrong) I arrived at in the 3 dimensional case (rho = p)
w_1 = p (sin(phi_1)cos(phi_2)+cos(phi_1)sin(phi_2) )* (cos(theta_1)cos(theta_2)-sin(theta_1)sin(theta_2))
w_2 = p (sin(phi_1)cos(phi_2)+cos(phi_1)sin(phi_2)) * (sin(theta_1)cos(theta_2)+cos(theta_1)sin(theta_2))
w_3 = p (cos(phi_1)cos(phi_2)-sin(phi1)sin(phi_2)

And assuming these are correct (derived from polar coordinate transformations and summing angles?), I would guess I substitute in for rho? I'm not sure what to substitute though, and I have no idea how to determine the angles.
And after that, I suppose I'd solve for the w's in terms of x,y,z and then just leave one w = to 0 and increment through the other 2 to construct my plane?
 
Physics news on Phys.org
i don't understand what plane you need? because in your relevant equations you list the equation of a plane? does that mean you do know the plane that intersects three points? if not and that's what you need it's an easy problem.
 
I know the plane that intersects the three points, or rather it's defined by the 3 points.

What I want to do is construct and color a plane out of polygons, which is easy to do for a 2-dimensional case but not an arbitrarily rotated 3d case. I need coordinate transforms from the generalized 3d coordinates to the rotated 2d plane so that I can construct a colored plane intersecting the data at any orientation.
 
ok still unclear? you want to draw polygons on the plane that is defined by those 3 points?
 
wait, I think I got you:
you want to rotate your coordinates so that your plane falls in x-y plane?
 
rootX said:
wait, I think I got you:
you want to rotate your coordinates so that your plane falls in x-y plane?

Right. I have an algorithm to draw in a 2-dimensional case, but need to find where points intersected by an arbitrary plane in 3 space would lie in 2 space.

So the steps are:
1. Define plane.
2. Find points that lie on plane.
3. Come up with transforms that make x, y, z dependent only on two variables x' and y'. (Z should drop out)
4. Use drawing algorithm to draw plane over x' and y', which should result in it being drawn correctly in 3 dimensions.

Step 3 is what I'm not sure about.
 
My Algorithm, if you have got you right:
1) Define Plane
2) Find two vectors that define that plane and are perpendicular (does not seem necessary)
3) take cross product (so you have three axis there - consider cross product as z axis)
4) ... ?
I would come up with something
But this is little different way to approach the problem so hopefully might give you some idea
 
4) You have three vectors defining your rotated co-od , and three unit vectors
<0 0 1> <0 1 0> <0 0 1>

you can find theta, rhos from here using dot product...

and you know the angles now!

now, just check the validity of your proof (using any linear algebra book - too lazy to check it ><).
http://www.kwon3d.com/theory/transform/rot.html
 

Similar threads

  • · Replies 20 ·
Replies
20
Views
3K
  • · Replies 1 ·
Replies
1
Views
2K
  • · Replies 4 ·
Replies
4
Views
2K
Replies
1
Views
1K
  • · Replies 4 ·
Replies
4
Views
2K
  • · Replies 16 ·
Replies
16
Views
2K
  • · Replies 1 ·
Replies
1
Views
3K
  • · Replies 11 ·
Replies
11
Views
4K
  • · Replies 4 ·
Replies
4
Views
2K
Replies
1
Views
2K