I Algorithm to determine the roulette curve

  • I
  • Thread starter Thread starter LAP3141
  • Start date Start date
  • Tags Tags
    Algorithm Curve
LAP3141
Messages
20
Reaction score
4
I am trying to develop an equation or algorithm to determine the roulette curve that results from rolling a curve over another fixed curve.

A general method to determine the roulette using any two curves, rolling and fixed, seems to be presented here:

https://en.wikipedia.org/wiki/Roulette_(curve)
I can follow the theoretical description. The curves are parameterized in the complex plain. This is convenient because complex multiplication is essentially a rotation and the roulette is determined by a rotation and a translation determined by aligning the tangents.

Also, the example presented, which is a rolling line over a fixed catenary, does indeed generate a variety of roulettes based on a variable parameter p.

But I am stuck in determining how to align the tangents for two general curves. The tangents are aligned when |f'(t)| = |r'(t)|.

In the given example, the parameterization for the line is chosen as sinh(t) based on the parameterization for the catenary so that |f'(t)| = |r'(t)|. IOW, given the parameterization for the catenary, a parameterization for the line is determined so that |f'(t)| = |r'(t)|.

I can't understand how this process of aligning tangents can be extended to two general curves.

For example, let's assume that the fixed curve is a general parabola, which is parameterized as z(t) = t + A*t^2*i.

Let's also assume that the rolling curve is a circle of radius R: z(t) = R * exp(t*i) = R*cos(t) + i*R*sin(t).

In this case, however, |f'(t)| = sqrt(4*A^2*t^2+1) and |r'(t)| = R which are not equal.

How then can a circle be parameterized so that it will have |f'(t)| = |r'(t)|?

This website casts a little more light on the issue:

http://www.mathcurve.com/courbes2d.gb/base/base.shtml
Here, it seems that they have a different parameter, u, for the rolling curve and the two frames are related by some factor and du/dt.

But I cannot understand how to apply this in general.

Can anyone comment on how to align the tangents for the general case?
 
Physics news on Phys.org
LAP3141 said:
For example, let's assume that the fixed curve is a general parabola, which is parameterized as z(t) = t + A*t^2*i.
Let's also assume that the rolling curve is a circle of radius R: z(t) = R * exp(t*i) = R*cos(t) + i*R*sin(t).

I was able to discover the solution. For one curve to roll upon another "without slipping" the arc lengths must be equal.

The arc length of the parabola, parameterized as above, is:

asinh(2*A*t)/(4*A)+(t*sqrt(4*A^2*t^2+1))/2

We need to now parameterize the circle a bit differently with a parameter u:

%i*R*(exp((%i*u)/R)-1) = %i*R*(cos(u/R)-1)-R*sin(u/R)

The arc length of this circle becomes:

u

Now we equate the two arc lengths and the parameterized circle becomes:

%i*R*(exp((%i*(asinh(2*A*t)/(4*A)+(t*sqrt(4*A^2*t^2+1))/2))/R)-1)

The basic roulette equation can now be applied.

Note that I am using the notation from the maxima symbolic math program.

This method can be applied to any two curves. The arc length expressions may be intractable but numerical methods could always be applied,

The complex plane representation is far more convenient that doing rotational transformations in the Euclidean plane.
 
  • Like
Likes qbar and Nik_2213
Back
Top