Curves and surfaces exact definitions (as parametric formulas)

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report
I need to extract full geometrical information about all the faces in a part using Inventor API. Unfortunately, the official documentation is very scarse in many important details.
Here are examples of things not defined in the manual:
- Completely no info about parametrizations of curves and surfaces.
- Arc3d Object: sign of Normal is not defined (it may look into any of two opposite directions), it is not clear what direction the arc goes from the starting point (positive angle change or negative). Can SweepAngle be negative or greater than one full round? Is it in radians or in degrees?
- Circle Object: sign of Normal is again unclear. Moreover, start point is not defined (though it can be calculated with Evaluator), orientation of the circle is not clear.
- Plane Object: how are X and Y axes obtained to parametrize the plane (they are U and V tangents to the plane) ?
- Cylinder Object: again, how are X and Y axes determined? Which side does the natural normal looks into (inwards or outwards) ?
- Cone Object: can HalfAngle be 90 degrees? Which half of the cone is used to define the face? Is it true that only the half which contains BasePoint is used for the face? Where does the natural normal looks to?
So you see that right now I have to guess a lot, or rely on many unconfirmed assumptions. Some of the questions can be guessed from doing experiments on Evaluator, but no number of experiments can make me absolutely sure that the answer is the same every time and does not depend on something else, for example.
Right now I'm trying to guess how are cones oriented, and it looks like orientation cannot be derived from the data I can get via API. So I'm going to write some stupid numeric code to ensure that I know where the normal looks to.
The question is: is there any better documentation of geometry (curves and surfaces) used in Inventor? Maybe some unofficial sources.
Ideally, there should be precise definition of curves and surfaces in parametric form with all the limitations. For example, I suppose that Arc3d curve is defined as:
Arc3d(t) = Center + ReferenceVector * cos(t) + [Normal x ReferenceVector] * sin(t);
for parameter t in [0; SweepAngle];
Note that such definition answers all the questions.