I have a point p1 defined in frame1 and I want to know what its X,Y and Z values are in frame 2. I thought, according the documentation http://wikihelp.autodesk.com/Inventor_ETO/enu/2013
Solved! Go to Solution.
I think you want "invertFrame" or perhaps "relateFrame". Look at the following rules, and their values:
Rule otherFrame As Frame = TranslateFrame(localFrame, Vector(1,1,1)) Rule otherPoint As Point = point_(0,0,0,otherFrame) Rule originInOtherFrame As Point = transformPoint(origin, otherFrame) Rule otherPointInMyFrame As Point = transformPoint(otherPoint, localFrame) Rule otherPointInOtherFrame1 As Point = transformPoint(otherPoint, invertFrame(otherFrame)) Rule otherPointInOtherFrame2 As Point = transformPoint(otherPoint, relateFrame(otherFrame, localFrame))
Autodesk Inventor ETO team
The basic answer is simple. "I have a point p1 defined in frame1 and I want to know what its X,Y and Z values are in frame 2." Just call LocalX(p1) in the context of frame 2. And LocalY, LocalZ, of course.
But I have answered this enough times in the last 20 years to think that maybe that isn't what you really want, though I hope it is.
You have to be very careful when you say "Intent returns a point in ..." Intent doesn't really return things in the normal sense. It knows the world coordinates of every point, and in theory handles all transformations for you. Don't be misled by coordinates displayed in various windows; points should be treated as coordinate-free. As a result, the ONLY time you really need LocalX and friends is when you are exporting data. If you are playing with X Y and Z components in rules, for feeding to other rules, you are almost certainly doing the Wrong Thing (tm).