2

I have this code snippet that rotates my model to face to the right.

        Point3D centre = GetCenter(model);
        Vector3D axis = new Vector3D(0, 1, 0); 
        Matrix3D transformationMatrix = model.Content.Transform.Value; 
        transformationMatrix.RotateAt(new Quaternion(axis, 90), centre); 
        myTransform3DGroup.Children.Add(new MatrixTransform3D(transformationMatrix)); 
        
        axis = new Vector3D(1, 0, 0); 
        transformationMatrix = model.Content.Transform.Value; 
        transformationMatrix.RotateAt(new Quaternion(axis, 150), centre); 
        myTransform3DGroup.Children.Add(new MatrixTransform3D(transformationMatrix));

enter image description here

When i add the following code i get

        axis = new Vector3D(0, 0, 1);
        transformationMatrix = model.Content.Transform.Value; 
        transformationMatrix.RotateAt(new Quaternion(axis, 90), centre); 
        myTransform3DGroup.Children.Add(new MatrixTransform3D(transformationMatrix));

enter image description here

As you can see it hasn't rotated around the z-axis as I would like. I'm very new to HelixToolkit but what I'm looking for is to rotate the face to face forward then I plan to write a function that will allow me to give 3 angles that will allow me to rotate the face along the x y and z-axis.

I have excluded some of my code If you need it all let me know and I can post.

Any ideas on how to rotate it along the axis?

Community
  • 1
  • 1
John Tracey
  • 83
  • 2
  • 11

0 Answers0