绘制 Kagome 格子

绘制 Kagome 格子

我一直在寻找一个可以绘制不同格子类型的包。例如,我需要绘制Kagome lattice在此处输入图片描述

绘制这种结构的最佳方法是什么?此外,是否有专用的包来绘制不同类型的晶格?

答案1

一种不太有效的方法是使用一些嵌套的 for 循环,仅在每个顶点绘制带有圆形节点的六边形节点。

在此处输入图片描述

\documentclass{article}

\usepackage{tikz}
\usetikzlibrary {shapes.geometric, calc}

\tikzset{
    my hex/.style={regular polygon, regular polygon sides=6, draw, inner sep=0pt, outer sep=0pt, minimum size=1cm},
    my circ/.style={draw, circle, fill=blue!50!white, inner sep=0pt, minimum size=1.5mm}
}

\begin{document}

\begin{tikzpicture}[thick]
  \foreach \n[count=\k] in {3,4,5,4,3}{
    \foreach \m in {1,...,\n}{
      \node(h)[my hex] at (-\n/2+\m,{\k*sqrt(3)/2}){};
      \foreach \t in {1,...,6} \node[my circ] at ($(h)+({(\t-1)*60}:.5)$){};
    }
  }
\end{tikzpicture}

\end{document}

相关内容