Message Boards Message Boards


[GIF] Osculating (Osculating circles to a polar curve)

Posted 1 year ago
2 Replies
5 Total Likes

Osculating circles to a polar curve


Conceptually fairly simple, though it took a while to find the right number of circles to include without causing unpleasant visual artifacts.

Anyway, the animation shows 100 osculating circles to the curve $r = \cos (3\theta+\pi/2)$ as they traverse along the curve.

As in Bessel and Tangents, I think it's interesting how the form of the curve emerges from a family of approximations even though the curve itself is never explicitly drawn.

Here's the code:

DynamicModule[{r, curvature, parametrizedcurve, n = 100, 
  cols = RGBColor /@ {"#08D9D6", "#EAEAEA", "#FF2E63", "#252A34"}},
 r[θ_] := Cos[3 θ + π/2];
 curvature[θ_] := (r[θ]^2 + 2 r'[θ]^2 - r[θ] r''[θ])/(r[θ]^2 + r'[θ]^2)^(3/2);
 parametrizedcurve[θ_] := {r[θ] Cos[θ], r[θ] Sin[θ]};
  Graphics[{Thickness[.005], Opacity[.8], 
    Table[{Blend[Append[cols[[;; 3]], cols[[1]]], Mod[θ, π]/π], 
      Circle[parametrizedcurve[θ] + 1/curvature[θ] Normalize[{-#[[2]], #[[1]]} 
        &[parametrizedcurve'[θ]]], 1/curvature[θ]]}, 
       {θ, t, π + t, 2 π/n}]},
    ImageSize -> 540, Background -> cols[[-1]], 
   PlotRange -> {{-3/2, 3/2}, {-9/8, 15/8}}],
  {t, 0, 2 π/n}]

And a still with 700 osculating circles which (to my eyes) doesn't work as an animation because of the aforementioned visual artifacts:

enter image description here

2 Replies

I love this one quite a lot! Wonderfully confusing!

enter image description here - Congratulations! This post is now a Staff Pick as distinguished on your profile! Thank you, keep it coming!

Reply to this discussion
Community posts can be styled and formatted using the Markdown syntax.
Reply Preview
or Discard

Group Abstract Group Abstract