Изменение дуги/кривой линии в фигуре тикз

Изменение дуги/кривой линии в фигуре тикз

Я новичок в tikz, но в последнее время я его активно изучаю и получил большую помощь вэтот вопрос я задал здесь. Я написал код ниже

\begin{tikzpicture} [scale=2]
\coordinate (A) at (0,3);
\coordinate (B) at (0,0);
\coordinate (C) at (3,0);
\coordinate (D) at (3,3);

\coordinate (E) at (0,2);
\coordinate (F) at (3,2);

\draw[fill=teal] (E) .. controls (1.5,2.75) and (1.5,2.75) .. (F) -- 
(C) 
-- 
(B) 
-- (E);

\draw (A) -- (E);
\draw (D) -- (F);

\draw[color=blue] (E) .. controls (1.5,2.75) and (1.5,2.75) .. (F) ;


\end{tikzpicture}

что дает цифру слева, тогда как я ищу ту, что справа, в том, что появляется ниже

кривые

Меня не волнуют цвета, длина и ширина внешней рамки/коробки. Меня волнует форма дуги/кривой сверху. На левом рисунке кривая кажется изогнутой в начале и конце, тогда как на правом рисунке верхняя кривая/дуга более плоская около левой и правой конечных точек (я выделил указанные проблемные области красным). Я пробовал изменять свои контрольные точки, но это, похоже, не сработало. Можно ли это сделать с помощью tikz, используя контрольные точки, или мне нужно что-то совсем другое? Я благодарю всех помощников и буду признателен за любую помощь по этому вопросу.

решение1

Вероятно, самый простой способ настроить такие кривые — использовать out=и in=в toкоманде:

\draw (E) to[out=0, in=180] (G)сделает исходящий угол 0 (на восток) из (E)и входящий угол 180 (с запада) в (G). Так что поместите координату (G)туда, где хотите, скажем, в (1.5,2.5).

введите описание изображения здесь

Вы можете отрегулировать loosenessдугу, добавив looseness=.8(или любой другой фактор, который вам нравится) к \drawпараметрам: \draw[fill=teal, looseness=.8].

\documentclass{article}

\usepackage{tikz}

\begin{document}

\begin{tikzpicture} [scale=2]
\coordinate (A) at (0,3);
\coordinate (B) at (0,0);
\coordinate (C) at (3,0);
\coordinate (D) at (3,3);

\coordinate (E) at (0,2);
\coordinate (F) at (3,2);
\coordinate (G) at (1.5,2.5);

\draw[fill=teal] (E) to[out=0, in=180] (G) to[out=0, in=180] (F) -- (C) -- (B) -- cycle;

\draw (A) -- (E);
\draw (D) -- (F);

\end{tikzpicture}

\end{document}

Связанный контент