Иногда вместо настройки каждого объекта tikz проще применить глобальную настройку ко всему окружению tikzpicture
. Например, если большинство кривых на рисунке должно изображаться жирными линиями, то проще изменить толщину линии по умолчанию (thin
) на жирную (thick
), чем устанавливать ее отдельно для каждого графического объекта. Вот как это делается.
Пусть исходный объект состоит из окружности и отрезка прямой:
\begin{tikzpicture}
\draw (0,0) circle (1);
\draw (-2,0) -- (2,0);
\end{tikzpicture}
Укажем, чтобы все линии в данном окружении tikzpicture
по умолчанию были жирными. Из соображений наглядности мы задали даже не просто жирные (thick
), а ультра-жирные (ultra thick
) линии.
\begin{tikzpicture}[ultra thick]
\draw (0,0) circle (1);
\draw (-2,0) -- (2,0);
\end{tikzpicture}
Если нам понадобится указать другую толщину для некоторых линий, это можно сделать обычным способом. Например, пусть отрезок будет изображен тонкой (thin
) линией:
\begin{tikzpicture}[ultra thick]
\draw (0,0) circle (1);
\draw [thin] (-2,0) -- (2,0);
\end{tikzpicture}
Еще одной полезной настройкой является масштабирование картинки. В следующем примере для обеих размерностей картинки 1 сантиметр исходного изображения преобразуется в 0.5 сантиметра нового изображения.
\begin{tikzpicture}[x=.5cm,y=.5cm]
\draw (0,0) circle (1);
\draw (-2,0) -- (2,0);
\end{tikzpicture}
Кроме того, окружение tikzpicture
имеет параметр scale
, позволяющий увеличивать или уменьшать чертеж в целом (в долях от текущего размера), а также параметры xscale
, yscale
, задающие масштабы отдельно по x и y. О других способах масштабирования написано тут.
Еще одним интересным объектом для настройки является блок scope
. Этот блок -- своеобразная "картинка в картинке", которую можно двигать и изменять, оставаясь в пределах окружения tikzpicture
или иначе -- "фигурные скобки", объединяющие несколько графических объектов.
Само по себе объединение в блок scope
не приводит к изменению изображения. Код:
\begin{tikzpicture}
\begin{scope}
\draw (0,0) circle (1);
\draw (-2,0) -- (2,0);
\end{scope}
\end{tikzpicture}
даст уже знакомый по первой картинке результат. Мы просто указываем tikz, что окружность и отрезок теперь -- единый объект.
Сделаем линии этого объекта жирными:
\begin{tikzpicture}
\begin{scope}[ultra thick]
\draw (0,0) circle (1);
\draw (-2,0) -- (2,0);
\end{scope}
\end{tikzpicture}
Как видно, делается это также как и для изображения в целом. Аналогично к scope
можно применять и другие глобальные настройки (точнее, сейчас это уже настройки блока).
Вот как выполняется перемещение изображений при помощи параметров xshift
и yshift
, а также их масштабирование без сохранения пропорций:
\begin{tikzpicture}
\begin{scope}
\draw (0,0) circle (1);
\draw (-2,0) -- (2,0);
\end{scope}
\begin{scope}[thick,xshift=4cm,yshift=0cm,x=.5cm,y=1cm]
\draw (0,0) circle (1);
\draw (-2,0) -- (2,0);
\end{scope}
\begin{scope}[very thick,xshift=0cm,yshift=-2.5cm,x=1cm,y=.5cm]
\draw (0,0) circle (1);
\draw (-2,0) -- (2,0);
\end{scope}
\end{tikzpicture}
Комментарии
comments powered by Disqus