I have been using CPnts_AbscissaPoint to compute the interpolation parameters of points in certain distances on my curves. The commands were
pointOnCurveAlgorithm.Perform(distance, referenceParameter, tolerance);
Recently I have found out that for some B-spline curves the results may suffer from heavy computation errors. It is visible to the naked eye that for example the computed middle point of a curve is not in the middle.
Fortunately there is also an advanced computation method which leads to the correct results in such cases:
pointOnCurveAlgorithm.AdvPerform(distance, referenceParameter, curve.LastParameter(), tolerance);
But sometimes the method AdvPerform takes excessively more time than the Perform method, even though I set the tolerance to 1.0e-2, which seems not very strict to me.
Does anybody know tricks to speed up this calculation while still keeping its accuracy?
Thank you very much,