Message Boards Message Boards

GROUPS:

[GIF] Isotomic (Isotomic conjugates of edge parallels)

Posted 2 years ago
3188 Views
|
1 Reply
|
4 Total Likes
|

Isotomic conjugates of edge parallels

Isotomic

As in Isogonal, I'm taking edge parallels of triangles which are translating parallel to themselves and applying a conjugation operation, this time isotomic conjugation. I really wanted to have a gradient in the background rather than a solid color, but there was no way to do it without the resulting GIF begin over 6 MB, which is just too big.

Here's the code for producing the GIF:

SideVectors[Δ_] := (#[[2]] - #[[1]]) & /@ 
   Transpose[{Δ[[1]], RotateLeft[Δ[[1]]]}];

SideLengths[Δ_] := Norm /@ SideVectors[Δ];

BarycentricCoords[Δ_, t_] := Sum[t[[i]] Δ[[1, i]], {i, 1, 3}]/Total[t];
TrilinearCoords[Δ_, {α_, β_, γ_}] := 
  Module[{a, b, c},
   {a, b, c} = SideLengths[Δ];
   BarycentricCoords[Δ, {α a, β b, γ c}]
   ];

hexagons = 
  Module[{cols = RGBColor /@ {"#14FFEC", "#DDDDDD", "#0D7377", "#212121"},
     n = 12, th = .0025, pts = CirclePoints[{1, -π/6}, 6], triangles},
   ParallelTable[
    triangles = Prepend[Table[Triangle[pts[[{i, i + 1, Mod[i + 2, 6, 1]}]]], {i, 1, 5, 2}], Triangle[pts[[;; ;; 2]]]];
    Show[
     Table[
      ParametricPlot[
       TrilinearCoords[triangles[[k]],
        RotateLeft[1/SideLengths[triangles[[k]]]^2*1/{i + s/n, (1 - i - s/n) t, (1 - i - s/n) (1 - t)}, j]],
       {t, .00001, .99999}, 
       PlotStyle -> Directive[CapForm[None], Thickness[th], Opacity[.5], cols[[1]]], 
       ImageSize -> 540, Axes -> False, PlotRange -> 4/3],
      {k, 1, Length[triangles]}, {j, 0, 2}, {i, 0., 1 - 1/n, 1./n}],
     Graphics[{
       FaceForm[None], 
       EdgeForm[Directive[JoinForm["Round"], Thickness[.006], Darker[cols[[1]], .05]]], Polygon[pts], triangles[[1]]}],
     Background -> Blend[cols[[3 ;;]], .85]],
    {s, .001, 1, 1/60}]
   ];

Export[NotebookDirectory[] <> "hexagons.gif", hexagons, "DisplayDurations" -> {1/24}]

enter image description here - Congratulations! This post is now Staff Pick! Thank you for your wonderful contributions. Please, keep them coming!

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

Group Abstract Group Abstract