사용자 정의 모양(TikZ)으로 교차점 표시

사용자 정의 모양(TikZ)으로 교차점 표시

원과 삼각형 \path사이 의 교차점을 표시하고 싶습니다 . curve내 서클은 괜찮습니다. 하지만 내 삼각형에 문제가 있습니다. 삼각형은 곡선의 방향을 나타내며 일종의 화살표입니다. 아마도이것내가 말하는 내용을 이해하는 데 도움이 됩니다.

여기 내 MWE가 있습니다. 편의상 오류 부분을 댓글로 달아드립니다.

\documentclass[tikz, border=1mm]{standalone}
\usetikzlibrary{shapes, arrows.meta, intersections}
\def\trigl{iscoceles triangle[width=1.4mm, rotate=-3]}
\begin{document}
    \begin{tikzpicture}
        \draw[-stealth] (0,0) -- (6.7,0) 
            node[right]{$x$}; %x-axis
        \draw[-stealth] (0,0) -- (0,3) 
            node[above]{$y$}; %y-axis
        \draw [thick, name path=curve1,{Circle[length=1.4mm]}-{Circle[length=1.4mm]}]
            (0.2,1) .. controls (2,.6) and (2.7,.6) .. (2.9,1.5) 
                    .. controls (3.1,2.7) and (4,3) .. (6.5,1.8);
        \path [name path = line1] (1,0)--(1,3.5) (1.4,0)--(1.4,3.5) (2.3,0)--(2.3,3.5) (2.7,0)--(2.7,3.5) (2.93,0)--(2.93,3.5) (3.25,0)--(3.25,3.5) (3.6,0)--(3.6,3.5) (4.4,0)--(4.4,3.5) (5.3,0)--(5.3,3.5) (5.7,0)--(5.7,3.5);
        \fill [name intersections={of=curve1 and line1, name=i}]
        \foreach \s in {1,2,3,4,6,7,8,9,10}{(i-\s) circle (2pt)};
%       \fill [name intersections={of=curve1 and line1, name=i}] {(i-5) \trigl (2pt)};
    \end{tikzpicture}
\end{document}

답변1

새로운 모양을 정의하는 대신 nodeby regular polygon sides=3(다각형인 경우) 또는 circle기타 등 의 모양을 변경하면 됩니다 . square방향이 원하지 않는 경우 회전할 수도 있습니다 rotate=30.

\documentclass[tikz, border=1mm]{standalone}
\usepackage{amsmath}
\usepackage{bm}
\usetikzlibrary{shapes, arrows.meta, intersections}
\begin{document}
    \begin{tikzpicture}
        \draw[-stealth] (0,0) -- (6.7,0) 
            node[right]{$x$}; %x-axis
        \draw[-stealth] (0,0) -- (0,3) 
            node[above]{$y$}; %y-axis
        \draw [thick, name path=curve1,{Circle[length=1.4mm]}-{Circle[length=1.4mm]}]
            (0.2,1) .. controls (2,.6) and (2.7,.6) .. (2.9,1.5) 
                    .. controls (3.1,2.7) and (4,3) .. (6.5,1.8);
        \path [name path = line1] (1,0)--(1,3.5) (1.4,0)--(1.4,3.5) (2.3,0)--(2.3,3.5) 
       (2.7,0)--(2.7,3.5) (2.93,0)--(2.93,3.5) (3.25,0)--(3.25,3.5) (3.6,0)--(3.6,3.5) 
       (4.4,0)--(4.4,3.5) (5.3,0)--(5.3,3.5) (5.7,0)--(5.7,3.5);
        \fill [name intersections={of=curve1 and line1, name=i}]
        \foreach \s in {1,2,3,4,6,7,8,9,10}{(i-\s) circle (2pt)};
       \path [name intersections={of=curve1 and line1, name=i}] (i-5) node[regular 
      polygon,regular polygon sides=3, fill,inner sep=1pt] {};
    \end{tikzpicture}
\end{document}

여기에 이미지 설명을 입력하세요

관련 정보