...
As a developer using HOOPS Exchange, you would like to evaluate the exact positions and directions along the edges of a B-Rep model. While attempting to do this, you encounter A3DTopoEdge
objects that have a null curve pointer. Why is this, and how do I evaluate edge geometry defined in this way?
...
HOOPS Exchange is capable of representing B-Rep data from many different source formats. Some formats define edge geometry using a parametric evaluation of the adjacent face(s) rather than a 3D curve defined by A3DTopoEdgeData::m_pCurve
.
If this is the case, you will encounter a null 3D curve pointer, but each coedge co-edge referencing the edge will contain a non-null A3DTopoCoEdgeData::m_pUVCurve
. This is a 2D curve that you can use with the function A3DCrvEvaluate
to evaluate over its valid interval. The evaluation will return a 2D vector (Z will be 0) which are parametric values to be used with the surface evaluator.
...