# How to draw dashed arc of a circle behind pyramid?

I am trying to draw like this picture

I tried

\documentclass[border=2 mm,12pt]{standalone}
\usepackage{fouriernc}
\usepackage{tikz}
\usepackage{tikz-3dplot}
\begin{document}
\tdplotsetmaincoords{70}{180}
\begin{tikzpicture}[tdplot_main_coords,line join = round, line cap = round]
\coordinate (A) at (0,0,0);
\coordinate (S) at (7/2,{-7*sqrt(3)/6},14/3);
\coordinate (C) at (7,0,0);
\coordinate (B) at  ({65/14},{15*sqrt(3)/14},0);
\coordinate (I) at  (7/2,{-7*sqrt(3)/6},0) ;

\draw[very thick] (A) -- (B) (B) -- (C)  (S) --  (A) (S) --(B) (S) -- (C) ;

\draw[dashed ] (C) -- (A) (I) -- (A) (I) -- (B) (I) --(C) (S) --(I) ;
\draw[very thick] (I) circle ({7/sqrt(3)});
\foreach \point/\position in {A/below,B/below,C/below,
I/below,S/above}
{
\fill (\point) circle (1.5pt);
\node[\position=3pt] at (\point) {$\point$};
}
\end{tikzpicture}
\end{document}


and got

How to draw dashed arc of a circle behind pyramid?

• Only an idea, a nice effect could be made with some transparency. – Harald Lichtenstein Mar 11 at 6:33

One thing that always works is the reverseclip trick.

\documentclass[border=2 mm,12pt]{standalone}
\usepackage{fouriernc}
\usepackage{tikz}
\usepackage{tikz-3dplot}
% based on https://tex.stackexchange.com/a/12033/121799
\tikzset{reverseclip/.style={insert path={(current bounding box.south west)rectangle
(current bounding box.north east)} }}
\begin{document}
\tdplotsetmaincoords{70}{180}
\begin{tikzpicture}[tdplot_main_coords,line join = round, line cap = round]
\coordinate (A) at (0,0,0);
\coordinate (S) at (7/2,{-7*sqrt(3)/6},14/3);
\coordinate (C) at (7,0,0);
\coordinate (B) at  ({65/14},{15*sqrt(3)/14},0);
\coordinate (I) at  (7/2,{-7*sqrt(3)/6},0) ;

\draw[very thick] (A) -- (B) (B) -- (C)  (S) --  (A) (S) --(B) (S) -- (C) ;

\draw[dashed ] (C) -- (A) (I) -- (A) (I) -- (B) (I) --(C) (S) --(I) ;
\path (I) circle ({1.01*7/sqrt(3)});
\begin{scope}
\clip (S) -- (C) -- (B) -- (A) -- cycle [reverseclip];
\draw[very thick] (I) circle ({7/sqrt(3)});
\end{scope}
\begin{scope}
\clip (S) -- (C) -- (B) -- (A);
\draw[dashed] (I) circle ({7/sqrt(3)});
\end{scope}
\foreach \point/\position in {A/below,B/below,C/below,
I/below,S/above}
{
\fill (\point) circle (1.5pt);
\node[\position=3pt] at (\point) {$\point$};
}
\end{tikzpicture}
\end{document}


• @minhthien_2016 Yes, you are right. Sorry! I fixed it. (I actually do not know what went wrong, perhaps I forgot to press command+c so that the older version was in the buffer.) – user121799 Mar 11 at 3:08
• A new question at here tex.stackexchange.com/questions/479756/… – minhthien_2016 Mar 16 at 11:48

Using the intersections library, the code would look like this (I have highlighted in red the required line):

\documentclass[border=2 mm,12pt]{standalone}
\usepackage{fouriernc}
\usepackage{tikz}
\usepackage{tikz-3dplot}
\usetikzlibrary{intersections}
\colorlet{bgcolor}{white}

\tikzset{
overdraw/.style={preaction={draw,bgcolor,line width=#1}},
overdraw/.default=2pt
}

\begin{document}
\tdplotsetmaincoords{70}{180}
\begin{tikzpicture}[tdplot_main_coords,line join = round, line cap = round]
\coordinate (A) at (0,0,0);
\coordinate (S) at (7/2,{-7*sqrt(3)/6},14/3);
\coordinate (C) at (7,0,0);
\coordinate (B) at  ({65/14},{15*sqrt(3)/14},0);
\coordinate (I) at  (7/2,{-7*sqrt(3)/6},0) ;

\draw[very thick] (A) -- (B) (B) -- (C) (S) --(B);
\draw[very thick,name path=SC] (S) -- (C);
\draw[very thick,name path=SA] (S) --  (A);

\draw[very thick,name path=CIR] (I) circle ({7/sqrt(3)});

\path [name intersections={of=SC and CIR, by={C,C'}}];
\path [name intersections={of=SA and CIR, by={D,D'}}];
\draw[red,dashed,overdraw] (C') to [bend right=-10] (D'); %to draw the curved path
\draw[dashed] (C) -- (A) (I) -- (A) (I) -- (B) (I) --(C) (S) --(I) ;
\foreach \point/\position in {A/below,B/below,C/below,
I/below,S/above}
{
\fill (\point) circle (1.5pt);
\node[\position=3pt] at (\point) {$\point$};
}
\end{tikzpicture}
\end{document}

• I think, the lines don't cut path=CIR. – minhthien_2016 Mar 11 at 3:52
• @minhthien_2016 - I have updated my answer. – subham soni Mar 11 at 3:57
• Please do not get me wrong, but the overdraw style seems to be remarkably similar to what one can find in tex.stackexchange.com/a/20874/121799. Wouldn't it be more appropriate to give credit to tex.stackexchange.com/a/20874/121799 for this? – user121799 Mar 11 at 7:32
• @subhamsoni If the line SC cut CIR at C,C', then the line SC line on the plane of the circle, and then, there is not the pyramid. – minhthien_2016 Mar 11 at 9:56