椭圆形、圆形、矩形和圆角矩形居中对齐

椭圆形、圆形、矩形和圆角矩形居中对齐

我如何才能智能地创建这些以毫米为单位的对齐图像?

在此处输入图片描述

我使用 GeoGebra 生成下面显示的代码。

\documentclass[border=5mm]{standalone}
\usepackage{pgf,tikz}

\begin{document}
    \begin{tikzpicture}
    \draw (0mm,0mm) ellipse (50mm and 20mm);

    \draw (150mm,0mm) circle (20mm);

    \draw (-50mm,-72.5mm)-- (50mm,-72.5mm);
    \draw (-50mm,-107.50mm)-- (50mm,-107.50mm);
    \draw (-50mm,-72.5mm)-- (-50mm,-107.50mm);
    \draw (50mm,-107.50mm)-- (50mm,-72.5mm);

    \draw (110mm,-72.5mm)-- (190mm,-72.5mm);
    \draw (110mm,-107.50mm)-- (190mm,-107.50mm);
    \draw (110mm,-72.5mm)-- (110mm,-107.50mm);
    \draw (190mm,-107.50mm)-- (190mm,-72.5mm);
    \end{tikzpicture}
\end{document}

我想通过使用中心作为参考来定义几何图形的位置来改进代码。将椭圆的中心置于位置(0,0)

尺寸不必显示。它们仅用于设置轮廓尺寸。

链接这个视频展示了我想学的东西。我是巴西人,所以是葡萄牙语的。

答案1

您可以使用positioning设置中心点,然后calc绘制形状。我已将其缩放至一半大小,以便更好地适应正常页面大小,但您可以通过设置 来获取真实大小x=1mm,y=1mm

\documentclass[border=5mm]{standalone}
\usepackage{tikz}
\usetikzlibrary{positioning,calc}
\begin{document}
    \begin{tikzpicture}[x=0.5mm,y=0.5mm]% Set the scale (default x and y is 1cm)
    \coordinate (a11);
    \coordinate[right=150 of a11](a12);
    \coordinate[below=90 of a11](a21);
    \coordinate[right=150 of a21](a22);
    %% 
    \draw[ultra thick] (a11) circle (50 and 20);
    \draw[dash dot] ($(a11)-(50+10,0)$) -- +($2*(50+10,0)$);
    \draw[dash dot] ($(a11)-(0,20+10)$) -- +($2*(0,20+10)$);
    %% 
    \draw[ultra thick] (a12) circle (20);
    \draw[dash dot] ($(a12)-(20+10,0)$) -- +($2*(20+10,0)$);
    \draw[dash dot] ($(a12)-(0,20+10)$) -- +($2*(0,20+10)$);
    %% 
    \draw[ultra thick] ($(a21)-(50,17.5)$) rectangle +(50*2,17.5*2);
    \draw[dash dot] ($(a21)-(50+10,0)$) -- +($2*(50+10,0)$);
    \draw[dash dot] ($(a21)-(0,17.5+10)$) -- +($2*(0,17.5+10)$);
    %%
    \draw[ultra thick,rounded corners=8] ($(a22)-(50,17.5)$) rectangle +(50*2,17.5*2);
    \draw[dash dot] ($(a22)-(50+10,0)$) -- +($2*(50+10,0)$);
    \draw[dash dot] ($(a22)-(0,17.5+10)$) -- +($2*(0,17.5+10)$);
    \end{tikzpicture}
\end{document}

杰

答案2

这是一个开始。

  • 您的示例中有很多不必要的东西(对于 MWE 而言)(\pagestyle{empty}例如奇怪的颜色定义和 -5.428299960530308)。
  • 您是用其他软件生成代码的吗?
  • 我删除了所有内容,并article在大多数情况下将其用作“更好的” MWE 文档类。

\documentclass{article}
\usepackage{tikz}
\usetikzlibrary{shapes,positioning}

\begin{document}

\begin{tikzpicture}[node distance=30mm]
\node[circle,draw,minimum width = 20mm,anchor=center] (n1) {Circle};
\node[ellipse,draw,minimum width = 20mm,minimum height = 10mm,anchor=center,below=20mm of n1] (n2) {Ellipse};
\node[rectangle,draw,minimum width = 20mm,minimum height = 10mm,anchor=center,right=20mm of n2] (n3) {Rectangle};
\end{tikzpicture}

\end{document}

在此处输入图片描述

相关内容