0
$\begingroup$

How do we generate a regular hexagon / triangle combination of repeating cell geometry shown : (Plastic chair seat weave, Star of David).

Unlike a pure triangle lattice where a node has three intersecting lines this one has alternate sides disappearing when two lines intersect.

Can we modify this recent program? Recent Tria lattice generation

enter image description here

Above base pattern is made in a mechanical software but is cumbersome.

Thanks for all help.

$\endgroup$
2
  • $\begingroup$ Obligatory question, what have you tried? $\endgroup$ – yarchik Jun 10 at 19:57
  • $\begingroup$ In mechanical modeling before. Only recently I learnt possible in Mma. $\endgroup$ – Narasimham Jun 10 at 20:39
3
$\begingroup$

With IGraph/M,

<< IGraphM`

mesh = IGLatticeMesh["Trihexagonal"]

enter image description here

IGMeshGraph[mesh]

enter image description here

See http://szhorvat.net/mathematica/IGDocumentation/#iglatticemesh

$\endgroup$
1
$\begingroup$

If I understood you question correctly, then the pattern consists of lines of 3 types:

  1. vertical lines through points x= 0,2,4,..., y=0
  2. slanted lines with angle of 30 degrees against the horizontal through points: x=1,5,9,13,.., y=0 3)slanted lines with angle of -30 degrees against the horizontal through points: x=1,5,9,13,.., y=0

We may draw this by:

n = 15;
v = 0.5;(*slope*)
linesvert = Table[InfiniteLine[{4 i, 0}, {1, v}], {i, n}];
linesslant1 = Table[InfiniteLine[{4 i, 0}, {-1, v}], {i, n}];
linesslant2 = 
  Table[{InfiniteLine[{1 + 4 i, 0}, {0, 1}], 
    InfiniteLine[{3 + 4 i, 0}, {0, 1}]}, {i, n}];
Graphics[{
  linesvert, linesslant1, linesslant2
  , Red, Thick, Line[{{21, v}, {24, 4 v}, {21, 7 v}, {21, v}}], 
  Line[{{20, 4 v}, {23, 1 v}, {23, 7 v}, {20, 4 v}}]
  }, PlotRange -> {{15, 40}, {0, 8}}]

enter image description here

$\endgroup$
1
$\begingroup$
hexagon = {FaceForm[White], EdgeForm[Black], Polygon @ #, Red, 
     PointSize[Large], Point @ #} & @ CirclePoints[6];

ClearAll[translations, triHex]

translations[w_, h_] := Join @@ Table[{2 j + i, i Sqrt[3]}, {i, 0, h-1}, {j, 0, w-1}]

triHex[w_, h_] := Translate[hexagon, translations[w, h]]

Graphics[triHex[7, 5], ImageSize -> 600]

enter image description here

$\endgroup$

Not the answer you're looking for? Browse other questions tagged or ask your own question.