
Я сделал рисунок с помощью Geogebra, как показано на рисунке ниже:
И экспортирую из него TEX-файл:
\documentclass[0pt]{article}
\usepackage{pgf,tikz}
\usepackage{mathrsfs}
\usetikzlibrary{arrows}
\pagestyle{empty}
\begin{document}
\begin{tikzpicture}[line cap=round,line join=round,>=triangle 45,x=1cm,y=1cm]
\draw (-6.398243018635849,29.30976776220647)-- (86.80087849068208,49.65488388110324);
\draw (97.54228504819193,22.03412416179222)-- (15.084570096383837,-25.93175167641558);
\draw [shift={(0,0)}] plot[domain=1.7857219540430334:5.239245930761878,variable=\t]({1*30*cos(\t r)+0*30*sin(\t r)},{0*30*cos(\t r)+1*30*sin(\t r)});
\draw [shift={(90,35)}] plot[domain=-1.0439393764177076:1.785721954043033,variable=\t]({1*15*cos(\t r)+0*15*sin(\t r)},{0*15*cos(\t r)+1*15*sin(\t r)});
\end{tikzpicture}
\end{document}
Думаю, я экспортирую с неправильными единицами измерения, поэтому чертеж не помещается на листе:
Нужно ли что-то исправлять в Geogebra перед экспортом или интереснее исправить полученный код?
РЕДАКТИРОВАТЬ
На основании комментария отмарсупилам. Как сделать так, чтобы дизайн был по центру листа и имел ширину 70 мм?
решение1
Не совсем твой вопрос, но рисовать это в тикзе тоже забавно...
Выход
Код
\documentclass[12pt,tikz]{standalone}
\begin{document}
\begin{tikzpicture}[rotate=39, scale=4]
% parameters of the shape
\def\thet{75}
\def\r{.4}
\coordinate (O) at (0,0) ;
\coordinate (a1) at ({cos(\thet)},{sin(\thet)});
\coordinate (a2) at ({cos(\thet)},{-sin(\thet)});
\coordinate (vanish) at ({sec(\thet)},0);
\path (vanish) -- (a1) coordinate[pos=\r] (b1)
(vanish) -- (a2) coordinate[pos=\r] (b2)
(vanish) -- (O) coordinate[pos=\r] (o) ;
\pgfresetboundingbox
\draw [blue, very thick, fill=red!20] (a1)
arc [start angle=\thet,end angle=360-\thet,radius=1] -- (b2)
arc [start angle=-\thet,end angle=\thet,radius=\r] -- cycle ;
\end{tikzpicture}
\end{document}
решение2
Вы можете рассчитать значение, x
посмотрев на обрезанный прямоугольник, предполагая, что это та область, которую вы хотите видеть в целом.
(В этом конкретном случае обрезка не нужна, поскольку за пределами обрезанного прямоугольника ничего не нарисовано. Поэтому вы также можете взглянуть на внешние координаты нарисованной вами фигуры).
х = 70 мм / (175,88229072982594 - (-92,2298265729806)) = 0,26 мм
Чтобы сохранить осевое отношение, следует задать y = x. Тогда получится такой результат (я добавил красный прямоугольник, чтобы увидеть обрезанную область):
\documentclass[0pt]{article}
\usepackage{pgf,tikz}
\usepackage{mathrsfs}
\usetikzlibrary{arrows}
\pagestyle{empty}
\begin{document}
\begin{tikzpicture}[line cap=round,line join=round,>=triangle 45,x=0.26mm,y=0.26mm]
\clip(-92.2298265729806,-92.52338090781379) rectangle (175.88229072982594,94.97188107843031);
\draw[red] (-92.2298265729806,-92.52338090781379) rectangle (175.88229072982594,94.97188107843031);
\draw (-6.398243018635849,29.30976776220647)-- (86.80087849068208,49.65488388110324);
\draw (97.54228504819193,22.03412416179222)-- (15.084570096383837,-25.93175167641558);
\draw [shift={(0,0)}] plot[domain=1.7857219540430334:5.239245930761878,variable=\t]({1*30*cos(\t r)+0*30*sin(\t r)},{0*30*cos(\t r)+1*30*sin(\t r)});
\draw [shift={(90,35)}] plot[domain=-1.0439393764177076:1.785721954043033,variable=\t]({1*15*cos(\t r)+0*15*sin(\t r)},{0*15*cos(\t r)+1*15*sin(\t r)});
\end{tikzpicture}
\end{document}