I have a question about the concept of brep itself. If I call
brep.Faces[0].IsoCurve(0, v_value)
and
brep.Faces[0].FrameAt(u, v_value, out var frame)
I would expect that the isocurve obtained would “follow” the frame.XAxis. Is this correct? Should I check the OrientationIsReversed flag? If so, why the two APIs refer to two different “coordinate systems”?
Hope that someone can clear some confusion for me,
Do not confuse what the Dir command displays with what the Surface.FrameAt method returns.
The Dir command shows you a surface’s U (green), V (red), and normal (white) directions. These are just vector, and they do not always create a valid, right-hand-rule plane.
For example, this is what you see when you run the Dir command on your surface and pick SwapUV:
The frame XAxis lines are both in the “vertical” direction, opposite from the isocurve, even after frame.Flip()is called. I would expect at least one of those to be in the other direction, am I thinking it right?
By the way, is calling brep_face.Transpose() the same as using SwapUV option of Dir? If so, I DO have to check for the OrientationIsReversed flag to have a frame similarly oriented to the face domain, right?