
Probablemente no entiendo cómo dibujar rectángulos con TikZ. El siguiente código muestra un dibujo claro, pero incluso si \g
son \w
iguales, el archivo de salida es incorrecto.
\documentclass[10pt,a4paper]{article}
\usepackage[utf8]{inputenc}
\usepackage[czech]{babel}
\usepackage{amsmath}
\usepackage{amsfonts}
\usepackage{amssymb}
\usepackage{graphicx}
\usepackage{tikz}
\begin{document}
\begin{tikzpicture}
\def \a {3}
\def \w {0.5}
\def \g {0.5}
\def \s14 {0.5}
\def \s34 {0.5}
\filldraw [blue] (0,0) rectangle (\a, \a);
\filldraw [white] (\w,\w) rectangle (\a - \w,\a - \w);
\filldraw [yellow] (0,\a/2 + \g/2) rectangle (\w,\g);
\end{tikzpicture}
\end{document}
Tomé algunas notas sobre el dibujo de salida. El área amarilla no es deseada; la posición y el tamaño del rectángulo gxw se muestran claramente. ¿Puede usted ayudar?
Respuesta1
¿Quieres esto? Puedes usar +
para decirle a TikZ que la segunda coordenada es relativa a la primera.
\documentclass[10pt,a4paper]{article}
\usepackage{tikz}
\begin{document}
\begin{tikzpicture}
\newcommand* \mylengthA {3}
\newcommand* \mylengthW {0.5}
\newcommand* \mylengthG {0.5}
\fill [blue] (0,0) rectangle (\mylengthA, \mylengthA);
\fill [white]
(\mylengthW,\mylengthW) rectangle
(\mylengthA - \mylengthW,\mylengthA - \mylengthW);
\fill [yellow]
(0,\mylengthA/2 + \mylengthG/2) rectangle +(\mylengthW,-\mylengthG);
\end{tikzpicture}
\end{document}
rectangle
Dibuja un rectángulo entre las dos coordenadas dadas. Sin +
ellos se consideran absolutos y no relativos entre sí. Entonces \draw (1,1) rectangle (2,2);
dibujaríamos un rectángulo entre esos dos puntos con bordes de 1 cm de longitud.