复制马蹄形物体并将其移动/收缩为圆形 TiKz

复制马蹄形物体并将其移动/收缩为圆形 TiKz

我想用 TiKz 实现这个图形:

我尝试使用 plot 语句将对象放在圆圈内。有没有更好的方法?如何创建对象、移动它并缩小它?这是我的代码:

\documentclass{article} 
\usepackage{tikz}
\usetikzlibrary{intersections}
\usepackage[ngerman]{babel}




\begin{document}

\begin{tikzpicture}


\draw [name path=circ] (-5,0) circle (2cm);

\filldraw [gray][name path=huf] plot [smooth cycle] coordinates {(-3,2)(-1.5,3) (0,0.5) (1.5,3) (3,2) (0,-1.5)};



\end{tikzpicture}
\end{document}

答案1

如果您喜欢的话请查看:

在此处输入图片描述

在移动和缩放最左边的图片时,您可能需要通过尝试找到正确的值......代码是:

\documentclass[border=3mm,tikz,preview]{standalone}
    \usetikzlibrary{intersections}

    \begin{document}
\begin{tikzpicture}
    \begin{scope}[rotate=210]
\draw[very thick,fill=gray] (1,0) 
    arc[x radius=12mm, y radius=24mm, start angle=-30, end angle=210]
    -- ++ (-0.5,0)
    arc[x radius=18mm, y radius=32mm, start angle=210, end angle=-30]
    -- cycle;
\draw[red] (0,4.25) circle (5);
\fill[red] (0,4.25) circle (2mm);
    \end{scope}
    \begin{scope}[xshift=110mm,rotate=210]
\draw[very thick,fill=gray] (1,2)
    arc[x radius=12mm, y radius=24mm, start angle=-30, end angle=210]
    -- ++ (-0.5,0)
    arc[x radius=18mm, y radius=32mm, start angle=210, end angle=-30]
    -- cycle;
\draw[red] (0,4.25) circle (5);
\fill[red] (0,4.25) circle (2mm);
    \end{scope}
    \begin{scope}[shift={(205mm,-20mm)},rotate=210,scale=0.5]
\draw[very thick,fill=gray] (1,0)
    arc[x radius=12mm, y radius=24mm, start angle=-30, end angle=210]
    -- ++ (-0.5,0)
    arc[x radius=18mm, y radius=32mm, start angle=210, end angle=-30]
    -- cycle;
\draw[red] (0,4.25) circle (5);
\fill[red] (0,4.25) circle (2mm);
    \end{scope}
\end{tikzpicture}
    \end{document}

相关内容