@Serejah, I have the same problem with your code as Andres have - the cursor goes mad. 
Andres, thank you. While I was at work i think that I can use this:
1- divide the spline to 100 “segments”, not 1 000 000
2- find the “segment” where the next point have to be paced
3- divide this segment to 1 000 poitns and find the right point
Your solution works better than my idea.
But there is one problem - try it on my scene with fixedDist = 0.3 - the max freezes. My ugly code in my first post works with 0.3 only if I increase the accuracy to 1.0. The time is the same 4+ secs, the used memory is much, much, much more than your code uses.
EDIT: increasing the numSubSeg = 100 to 100 solved the problem. 
I have tried the Shape Check utility - it works only when the circle is part of the same spline.
