Я пытаюсь сделать трехмерные фигуры (большой додекаэдр, малый звездчатый додекаэдр), для чего до сих пор использовал пакет tikz в латексе. С помощью функций \coordinate
и \draw
мне удалось сгенерировать точный трафарет для этих моделей.
Теперь вместо того, чтобы делать многогранники, я пытаюсь добавить к нему цветочные узоры, используя только tikz, так как я не силен в скетчинге.
Это импорт изображений jpg (с цветочными узорами) в треугольники, нарисованные с помощью tikz, чтобы сделать трафарет для многогранников, например:
Я знаю, как импортировать графику в латекс и как делать геометрические узоры с помощью tikz, но не знаю, как «обрезать» файл jpg в треугольник или любой другой многоугольник, координаты которого указаны в tikz.
Например, ниже приведен код, который я использую для создания одной поверхности, содержащей 10 треугольников.
\documentclass{article}
\usepackage[usenames,dvipsnames]{xcolor}
\usepackage{tikz,ifthen}
\usetikzlibrary{calc,intersections,patterns}
\usepackage[paper=a4paper,dvips,top=.7cm,left=1.5cm,right=1.5cm, foot=1.2cm,bottom=1cm]{geometry}
\begin{document}
\pagestyle{empty}
\begin{tikzpicture}[scale=0.95,thin,rotate=0]
\coordinate (O) at (0cm,0cm);
\coordinate (A) at ($(O) + (36:3cm)$);
\coordinate (B) at ($(A) + (-36:3cm)$);
\coordinate (C) at ($(O) + (-36:3cm)$);
\coordinate (X) at ($(O) + (4.78mm,1.56mm)$);
\coordinate (Y) at ($(A) + (0mm,-1.9mm)$);
\coordinate (Z) at ($(B) + (-4.78mm,1.56mm)$);
\coordinate (X1) at ($(O) + (4.78mm,-1.56mm)$);
\coordinate (Y1) at ($(O) + (-36:3cm) + (0mm,1.9mm)$);
\coordinate (Z1) at ($(B) + (-4.78mm,-1.56mm)$);
\foreach \i in {0,72,...,360}{
\draw[gray, thin] let \p0=(O), \p1=(A), \p2=(B), \p3=(C) in
[rotate around={\i:(O)}] (\p2)--(\p1)--(\p0)--(\p2)--(\p3);
\draw[gray,thin,dashed] let \p1=(X), \p2=(Y), \p3=(Z) in
[rotate around={\i:(O)}] (\p1)--(\p2)--(\p3)--cycle;
\draw[gray,thin,dashed] let \p1=(X1), \p2=(Y1), \p3=(Z1) in
[rotate around={\i:(O)}] (\p1)--(\p2)--(\p3)--cycle;
}
\foreach \density in {20,30,...,160}{
\foreach \i in {0,72,...,360}{
\draw[fill=Magenta!\density] let \p1=(X), \p2=(Y), \p3=(Z) in
[rotate around={\i:(O)}] (\p1)--(\p2)--(\p3)--cycle;
}
\path
(X) coordinate (X1)
-- (Y) coordinate[pos=.15](X)
-- (Z) coordinate[pos=.15](Y)
-- (X1) coordinate[pos=.15](Z);
}
\end{tikzpicture}
\end{document}
Это изображение, которое он генерирует:
Проблема в том, что узор на изображении также генерируется тексом, то, что я хочу, это любой цветочный/не цветочный узор (который я выбираю), могу ли я обрезать внутри треугольника (треугольник находится в каком-то определенном месте на текс-рисунке) .
Любая помощь будет принята с благодарностью.
Спасибо.