Projecting a B-Spline Curve from Formula to a Circle

Hi All

I recently just discovered the tool to generate a B-spline curve by formula in Microstation V8i. It works great.

The problem I have now is to fit this curve into a circle of certain radius. I wonder if there is any tools for doing so.

I am actually working on a wheel flat problem in railways which is like a Haversine curve (to represent the flat). I attached a picture for clarity...

Thank you!

Parents
  • Though I don't doubt Jon's suggestion of a mathematical solution, I can't begin to touch the math on this question.  I do, however, have a hunch that you can get a geometric solution to it using GenerativeComponents, which has bsplineCurveByFunction.  You might try to sample the source curve, project those points to another curve, and then redraw a spline through the projected points.  Or, draw a spline through the points, then use the formula to displace just the points you wish to move (which would also give you continuity to the rest of the circle).  It is just a hunch, though, and I'm not suggesting that there is not a way in MicroStation :^)



Reply
  • Though I don't doubt Jon's suggestion of a mathematical solution, I can't begin to touch the math on this question.  I do, however, have a hunch that you can get a geometric solution to it using GenerativeComponents, which has bsplineCurveByFunction.  You might try to sample the source curve, project those points to another curve, and then redraw a spline through the projected points.  Or, draw a spline through the points, then use the formula to displace just the points you wish to move (which would also give you continuity to the rest of the circle).  It is just a hunch, though, and I'm not suggesting that there is not a way in MicroStation :^)



Children