hexagon logo

About Transform rotation, how to rotate based on I J K ?

Hello all,

Since most parts I dealt with were PLANE_A CIRCLE/SLOT_B CIRCLE/SLOT_C, so I always started with Readpoints to my programs. Before programing, I always move the coordinate system to where It should go. But sometime the original zero is way off the position with not only position off but also angles to rotate.

For example, let treat PT1 vectors as surface vectors.
I will calculate those I J K with arcsin to angles, then rotate with X Y or Z with the angles, usually it took couple rounds to have one vector close to -1 or 1.

Any easy way to deal with rotations? Any tips or suggestions are welcomes

Thank you




  • Likely not as helpful... But I have never really liked trying to level out things in PC-DMIS so I do it in a CAD software then import it.
    Or possibly bring your CNC programmer a cookie and ask them to do it for you, should only take them a moment. They might also already have it from when they programmed the part for their machine.
  • Yes, I will try SELECT method next time. Thank you.
  • Why not bestfit the first alignment and then align/measure as you please? Then it wouldn't matter where the original coordinatesystem is located because you bestfit to it.
  • It can be a bit tricky if the part model's at a compound angle to the coordinate system.

    When you select rotate option, you can pick either a line (so a straight edge for example) , or points (so you could pick a top and bottom diameter of a cylinder for example).

    Remember however, that you are only rotating about one axis (not actually levelling to the selected features) so you often need to do three (and sometimes more) rotations until you are 'square'.

    If the coordinate system is removed from the model as well, it's easier to move xyz to a featured (corner or centre) on the model first.



    It beats trying to trig stuff out though!
  • You can also check your transformations while you are doing them by measuring features with the transform window open. I'll measure a point on a plane and check its vector to make sure I've done all the rotations needed.


  • You can also check your transformations while you are doing them by measuring features with the transform window open. I'll measure a point on a plane and check its vector to make sure I've done all the rotations needed.


    {"alt":"Click image for larger version Name:\timage.png Views:\t9 Size:\t132.9 KB ID:\t538718","data-align":"none","data-attachmentid":"538718","data-size":"full","title":"image.png"}


    Something I find even easier is to have the Probe Readouts window open with the CAD coordinates displayed. The CAD coordinates and vector at the mouse pointer position will be displayed in real time. So, as you do transforms you can swipe the mouse over a surface to see its position and to check the vector to see if it is level.

    This can also be a way to check if a surface is planar. If the vector values do not change as you sweep the cursor over a surface then you know it is flat, even if the surface is at a funky angle.

    Note: The Probe Readouts window precision is based on the DISPLAYPRECISON setting at the current cursor position in the Edit window. So, when I use this to check CAD transforms, I like to set this value high so I can be really sure that I have rotated a surface to be square to an axis. Below you can see that a surface is squared up to within 6 decimal places.