Message Boards Message Boards

[GIF] Isotomic (Isotomic conjugates of edge parallels)

GROUPS:

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}]
POSTED BY: Clayton Shonkwiler
Answer
6 months ago

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

POSTED BY: Moderation Team
Answer
5 months ago

Group Abstract Group Abstract