
일부 이등분선이 있는 원의 교차점에 일부 노드를 배치하려고 합니다. 그러나 교차로가 내가 예상한 대로 작동하지 않습니다.
텍스트잘못된원과 회색 선의 교차점에 배치해야 하지만, 분명히 임의의 위치에 있습니다.
또한, 주석 처리된 줄의 주석 처리를 제거하면 두 교차점이 정확히 같은 지점에 배치됩니다.
(파란색 텍스트는 정확히 예상되는 위치입니다.)
누군가 내가 뭘 잘못하고 있는지 설명할 수 있나요? 두 경우 모두 노드가 잘못된 위치에 배치되는 이유를 이해할 수 없습니다.
미리 감사드립니다!
\documentclass{article}
\usepackage{tikz}
\usetikzlibrary{calc,intersections}
\begin{figure}
\centering
\begin{tikzpicture}
\draw[thick,dashed, name path=circ] (2,2) circle (2cm);
\begin{scope}[shift={(2,2)}]
\filldraw (165:2) node[left=3.5pt] (c) {\large $c$} circle (3pt);
\filldraw (225:2) node[below=3.5pt] (b) {\large $b$} circle (3pt);
%\filldraw (135:2) node[above=3.5pt] (a) {\large $a$} circle (3pt);
\end{scope}
%\path[shorten >=-0.5cm,-, name path= path1] let \p1=($ (a) !.5! (b) $) in (2,2) -- ($(\p1)+(5,0)$);
%\draw[name intersections = {of =circ and path1}] (intersection-1) node[blue] (ab) {\Large right};
\path[shorten <= -0.5cm,-, name path=path3] let \p1=($ (b) !.5! (c) $) in (\p1) edge[gray] (2,2);
\draw[name intersections={of=circ and path3}] (intersection-1) node (bc) {wrong};
\end{tikzpicture}
\end{figure}
\end{document}
답변1
먼저 MWE가 실제로 컴파일되는지 확인하세요. 여기 \begin{document}
에 tikz lib가 calc
없습니다.
둘째, 여기서 문제는 \path[shorten <= -0.5cm,-, name path=path3]
해당 shorten
부분이 경로 길이(계산에 사용할 수 있는 부분)에 추가되지 않고 표시된 버전에만 추가된다는 것입니다. 따라서 교차점을 계산하는 데 사용되는 선분은 완전히 원 안에 있으므로 찾을 수 없다는 오류가 발생합니다.
이게 효과가 있는 것 같아요
\documentclass{standalone}
\usepackage{tikz}
\usetikzlibrary{intersections,calc}
\begin{document}
\begin{tikzpicture}
\draw[thick,dashed, name path=circ] (2,2) circle (2cm);
\begin{scope}[shift={(2,2)}]
\filldraw (165:2) node[left=3.5pt] (c) {\large $c$} circle (3pt);
\filldraw (225:2) node[below=3.5pt] (b) {\large $b$} circle (3pt);
% \filldraw (135:2) node[above=3.5pt] (a) {\large $a$} circle (3pt);
\end{scope}
% \path[shorten >=-0.5cm,-, name path= path1] let \p1=($ (a) !.5! (b) $) in (2,2) -- ($(\p1)+(5,0)$);
% \draw[name intersections = {of =circ and path1}] (intersection-1) node[blue] (ab) {\Large right};
% \path[shorten <= -0.5cm,-, name path=path3] let \p1=($
% (b) !.5! (c) $) in (\p1) edge[gray] (2,2);
\coordinate (d) at ($(b) !.5! (c) $);
\coordinate (o) at (2,2);
\draw[name path=path3] (o) -- ($(o)!1.5!(d)$);
\draw[name intersections={of=circ and path3,by=e}] (e) node (bc) {wrong};
\end{tikzpicture}
\end{document}
이런 유형의 질문에 더 적합하기 때문에 독립형 수업으로 전환했습니다. 또한 figure
이 질문과 관련이 없으므로 환경을 제거했습니다.