Current location - Education and Training Encyclopedia - Graduation thesis - How to write the surface equation obtained by rotating a straight line around another straight line in three-dimensional space?
How to write the surface equation obtained by rotating a straight line around another straight line in three-dimensional space?
Take any point B (t+ 1 = y/-3 = z/3 = t) on the bus X- 1, -3t and 3t.

Take a point A(2, 1, -2) at x/2=y=z/-2, and find the spherical equation β with A as the center and AB as the radius.

Then find the plane α perpendicular to x/2=y=z/-2 after the change point.

Then the elimination parameter T of simultaneous plane α equation and spherical β equation is the final answer.

Ps: Generally speaking, it is to get a hyperboloid of a single leaf (neither perpendicular nor intersecting), or it may be a cone (intersecting but not perpendicular), or it may be a plane that digs a disk area (perpendicular but not intersecting) or a plane (perpendicular and intersecting).

Function codes corresponding to extended data

void RotateArbitraryAxis(d3dx matrix * pOut,D3DXVECTOR3* axis,float theta)

{

D3DXVec3Normalize (axis, axis); Floating u = axis->; x; Floating v = axis->; y; Floating w = axis-> z;

Pout-> m[0][0]= cosf(θ)+(u * u)*( 1-cosf(θ));

Pout-> m[0][ 1]= u * v *( 1-cosf(theta))+w * sinf(theta);

Pout-> m[0][2]= u * w *( 1-cosf(theta))-v * sinf(theta);

Pout-> m[0][3]= 0;

Pout-> m[ 1][0]= u * v *( 1-cosf(theta))-w * sinf(theta);

Pout-> m[ 1][ 1]= cosf(θ)+v * v *( 1-cosf(θ));

Pout-> m[ 1][2]= w * v *( 1-cosf(theta))+u * sinf(theta);

Pout-> m[ 1][3]= 0;

Pout-> m[2][0]= u * w *( 1-cosf(theta))+v * sinf(theta);

Pout-> m[2][ 1]= v * w *( 1-cosf(theta))-u * sinf(theta);

Pout-> m[2][2]= cosf(θ)+w * w *( 1-cosf(θ));

Pout-> m[2][3]= 0;

Pout-> m[3][0]= 0;

Pout-> m[3][ 1]= 0;

Pout-> m[3][2]= 0;

Pout-> m[3][3]= 1;