[GIF] Pushed Around (a geodesic in pentagon space)

pentagons9.gif

Pushed Around

Continuing with the theme ( 1 , 2 , 3 , 4 ), this is another closed geodesic in polygon space. For some reason, I’ve almost never used Dashing before, but it’s kind of fun to play around with.

Here’s the code:

ToReal[z_] := {Re[z], Im[z]};
ToComplex[{x_, y_}] := x + I y;
FrameToPol[{A_, B_}] := ToReal[ToComplex[#]^2] & /@ Transpose[{A, B}];
FrameToVertices[{A_, B_}] := Accumulate[FrameToPol[{A, B}]];

Manipulate[Module[{cols, fr, dfr, θ, verts},
  cols = RGBColor /@ {"#00C3FF", "#3B475E"};
  fr = Transpose[
    ToReal[Sqrt[#]] & /@ 
     Table[2/5 E^(I θ), {θ, π/5, 
       4 π + π/5 - 4 π/5, 4 π/5}]];
  dfr = Transpose[
    ToReal[Sqrt[#]] & /@ 
     Table[2/5 E^(I θ), {θ, π/5, 
       2 π + π/5 - 2 π/5, 2 π/5}]];
  θ = π (1/2 - 1/2 Cos[π s]);
  Graphics[{FaceForm[None], 
    EdgeForm[
     Directive[cols[[1]], JoinForm["Round"], CapForm["Round"], 
      Dashing[{.02, .04}], Thickness[.005]]], {
     verts = 
      RotationMatrix[4 π/5].# & /@ 
       FrameToVertices[Cos[θ] fr + Sin[θ] dfr];
     Polygon[-Mean[verts] + # & /@ verts]}}, ImageSize -> 540, 
   PlotRange -> 1/Sqrt[2], Background -> cols[[2]]]], {s, 0., 1}]
5 Likes

2015-11-02_10-07-11.png

  • another post of yours has been selected for the Staff Picks group, congratulations !

We are happy to see you at the tops of the “Featured Contributor” board. Thank you for your wonderful contributions, and please keep them coming!