Skip to main content
added 85 characters in body
Source Link
Rmano
  • 49.4k
  • 4
  • 78
  • 159

I find it a bit on the convoluted side, but... you can find the point by using paths instead of draws, do an inverse clip in a scope (adapted from here), re-draw the lines, exit the scope, and add the jump crossing:

\documentclass{beamer} \usepackage{tikz} \usetikzlibrary{intersections} \usetikzlibrary{calc} \usebackgroundtemplate{% \tikz\node[opacity=0.1] {\includegraphics[height=\paperheight,width=\paperwidth]{example-grid-100x100pt}};} \usepackage{circuitikz} \newlength{\crossing} \makeatletter \setlength{\crossing}{\ctikzvalof{bipoles/crossing/size}\pgf@circ@Rlen} \makeatother \tikzset{ clip even odd rule/.code={\pgfseteorule}, % Credit to Andrew Stacey invclip/.style={ clip,insert path={{{{[reset   cm] [clip even odd rule]{   [reset cm](-2000pt\maxdimen,-2000pt\maxdimen) rectangle (2000pt\maxdimen,2000pt\maxdimen)  % well outside the canvas, avoid problems with magnification} }}}}}  } \begin{document} \begin{frame} \begin{tikzpicture}[scale=4,transform shape] \path[name path=p1] (0,0) -- (2,0) ; \path[name path=p2] (1,1) -- (1,-1) ; \begin{scope}\begin{pgfinterruptboundingbox}[overlay] \path [name intersections={of=p1 and p2,by=cross}]; \clip [invclip] (cross) circle[radius=0.5\crossing]; \draw (0,0) -- (2,0) ; \draw (1,1) -- (1,-1) ; \end{pgfinterruptboundingbox}\end{scope} \path (cross) node[jump crossing,rotate=-90]{}; \end{tikzpicture} \end{frame} \end{document} 

enter image description here

(okular is struggling with the antialiasing here a bit...)

I find it a bit on the convoluted side, but... you can find the point by using paths instead of draws, do an inverse clip in a scope (adapted from here), re-draw the lines, exit the scope, and add the jump crossing:

\documentclass{beamer} \usepackage{tikz} \usetikzlibrary{intersections} \usetikzlibrary{calc} \usebackgroundtemplate{% \tikz\node[opacity=0.1] {\includegraphics[height=\paperheight,width=\paperwidth]{example-grid-100x100pt}};} \usepackage{circuitikz} \newlength{\crossing} \makeatletter \setlength{\crossing}{\ctikzvalof{bipoles/crossing/size}\pgf@circ@Rlen} \makeatother \tikzset{invclip/.style={clip,insert path={{{{[reset cm] (-2000pt,-2000pt) rectangle (2000pt,2000pt)  % well outside the canvas, avoid problems with magnification }}}}}} \begin{document} \begin{frame} \begin{tikzpicture}[scale=4,transform shape] \path[name path=p1] (0,0) -- (2,0) ; \path[name path=p2] (1,1) -- (1,-1) ; \begin{scope}\begin{pgfinterruptboundingbox} \path [name intersections={of=p1 and p2,by=cross}]; \clip [invclip] (cross) circle[radius=0.5\crossing]; \draw (0,0) -- (2,0) ; \draw (1,1) -- (1,-1) ; \end{pgfinterruptboundingbox}\end{scope} \path (cross) node[jump crossing,rotate=-90]{}; \end{tikzpicture} \end{frame} \end{document} 

enter image description here

(okular is struggling with the antialiasing here a bit...)

I find it a bit on the convoluted side, but... you can find the point by using paths instead of draws, do an inverse clip in a scope (adapted from here), re-draw the lines, exit the scope, and add the jump crossing:

\documentclass{beamer} \usepackage{tikz} \usetikzlibrary{intersections} \usetikzlibrary{calc} \usebackgroundtemplate{% \tikz\node[opacity=0.1] {\includegraphics[height=\paperheight,width=\paperwidth]{example-grid-100x100pt}};} \usepackage{circuitikz} \newlength{\crossing} \makeatletter \setlength{\crossing}{\ctikzvalof{bipoles/crossing/size}\pgf@circ@Rlen} \makeatother \tikzset{ clip even odd rule/.code={\pgfseteorule}, % Credit to Andrew Stacey invclip/.style={ clip,insert path=    [clip even odd rule]{   [reset cm](-\maxdimen,-\maxdimen)rectangle(\maxdimen,\maxdimen) } }  } \begin{document} \begin{frame} \begin{tikzpicture}[scale=4,transform shape] \path[name path=p1] (0,0) -- (2,0) ; \path[name path=p2] (1,1) -- (1,-1) ; \begin{scope}[overlay] \path [name intersections={of=p1 and p2,by=cross}]; \clip [invclip] (cross) circle[radius=0.5\crossing]; \draw (0,0) -- (2,0) ; \draw (1,1) -- (1,-1) ; \end{scope} \path (cross) node[jump crossing,rotate=-90]{}; \end{tikzpicture} \end{frame} \end{document} 

enter image description here

(okular is struggling with the antialiasing here a bit...)

added 7 characters in body
Source Link
Rmano
  • 49.4k
  • 4
  • 78
  • 159

I find it a bit on the convoluted side, but... you can find the point by using paths instead of draws, do an inverse clip in a scope (adapted from here), re-draw the lines, exit the scope, and add the jump crossing:

\documentclass{beamer} \usepackage{tikz} \usetikzlibrary{intersections} \usetikzlibrary{calc} \usebackgroundtemplate{% \tikz\node[opacity=0.1] {\includegraphics[height=\paperheight,width=\paperwidth]{example-grid-100x100pt}};} \usepackage{circuitikz} \newlength{\crossing} \makeatletter \setlength{\crossing}{\ctikzvalof{bipoles/crossing/size}\pgf@circ@Rlen} \makeatother \tikzset{invclip/.style={clip,insert path={{{{[reset cm] (-2000pt,-2000pt) rectangle (2000pt,2000pt) % well outside the canvas, avoid problems with magnification }}}}}} \begin{document} \begin{frame} \begin{tikzpicture}[scale=4,transform shape] \path[name path=p1] (0,0) -- (2,0) ; \path[name path=p2] (1,1) -- (1,-1) ; \begin{scope}\begin{pgfinterruptboundingbox} \path [name intersections={of=p1 and p2,by=cross}]; \clip [invclip] (cross) circle[radius=\crossing];circle[radius=0.5\crossing]; \draw (0,0) -- (2,0) ; \draw (1,1) -- (1,-1) ; \end{pgfinterruptboundingbox}\end{scope} \path (cross) node[jump crossing,rotate=-90]{}; \end{tikzpicture} \end{frame} \end{document} 

enter image description here

(okular is struggling with the antialiasing here a bit...)

I find it a bit on the convoluted side, but... you can find the point by using paths instead of draws, do an inverse clip in a scope (adapted from here), re-draw the lines, exit the scope, and add the jump crossing:

\documentclass{beamer} \usepackage{tikz} \usetikzlibrary{intersections} \usetikzlibrary{calc} \usebackgroundtemplate{% \tikz\node[opacity=0.1] {\includegraphics[height=\paperheight,width=\paperwidth]{example-grid-100x100pt}};} \usepackage{circuitikz} \newlength{\crossing} \makeatletter \setlength{\crossing}{\ctikzvalof{bipoles/crossing/size}\pgf@circ@Rlen} \makeatother \tikzset{invclip/.style={clip,insert path={{[reset cm] (-2000pt,-2000pt) rectangle (2000pt,2000pt) % well outside the canvas, avoid problems with magnification }}}} \begin{document} \begin{frame} \begin{tikzpicture}[scale=4,transform shape] \path[name path=p1] (0,0) -- (2,0) ; \path[name path=p2] (1,1) -- (1,-1) ; \begin{scope}\begin{pgfinterruptboundingbox} \path [name intersections={of=p1 and p2,by=cross}]; \clip [invclip] (cross) circle[radius=\crossing]; \draw (0,0) -- (2,0) ; \draw (1,1) -- (1,-1) ; \end{pgfinterruptboundingbox}\end{scope} \path (cross) node[jump crossing,rotate=-90]{}; \end{tikzpicture} \end{frame} \end{document} 

enter image description here

(okular is struggling with the antialiasing here a bit...)

I find it a bit on the convoluted side, but... you can find the point by using paths instead of draws, do an inverse clip in a scope (adapted from here), re-draw the lines, exit the scope, and add the jump crossing:

\documentclass{beamer} \usepackage{tikz} \usetikzlibrary{intersections} \usetikzlibrary{calc} \usebackgroundtemplate{% \tikz\node[opacity=0.1] {\includegraphics[height=\paperheight,width=\paperwidth]{example-grid-100x100pt}};} \usepackage{circuitikz} \newlength{\crossing} \makeatletter \setlength{\crossing}{\ctikzvalof{bipoles/crossing/size}\pgf@circ@Rlen} \makeatother \tikzset{invclip/.style={clip,insert path={{{{[reset cm] (-2000pt,-2000pt) rectangle (2000pt,2000pt) % well outside the canvas, avoid problems with magnification }}}}}} \begin{document} \begin{frame} \begin{tikzpicture}[scale=4,transform shape] \path[name path=p1] (0,0) -- (2,0) ; \path[name path=p2] (1,1) -- (1,-1) ; \begin{scope}\begin{pgfinterruptboundingbox} \path [name intersections={of=p1 and p2,by=cross}]; \clip [invclip] (cross) circle[radius=0.5\crossing]; \draw (0,0) -- (2,0) ; \draw (1,1) -- (1,-1) ; \end{pgfinterruptboundingbox}\end{scope} \path (cross) node[jump crossing,rotate=-90]{}; \end{tikzpicture} \end{frame} \end{document} 

enter image description here

(okular is struggling with the antialiasing here a bit...)

Source Link
Rmano
  • 49.4k
  • 4
  • 78
  • 159

I find it a bit on the convoluted side, but... you can find the point by using paths instead of draws, do an inverse clip in a scope (adapted from here), re-draw the lines, exit the scope, and add the jump crossing:

\documentclass{beamer} \usepackage{tikz} \usetikzlibrary{intersections} \usetikzlibrary{calc} \usebackgroundtemplate{% \tikz\node[opacity=0.1] {\includegraphics[height=\paperheight,width=\paperwidth]{example-grid-100x100pt}};} \usepackage{circuitikz} \newlength{\crossing} \makeatletter \setlength{\crossing}{\ctikzvalof{bipoles/crossing/size}\pgf@circ@Rlen} \makeatother \tikzset{invclip/.style={clip,insert path={{[reset cm] (-2000pt,-2000pt) rectangle (2000pt,2000pt) % well outside the canvas, avoid problems with magnification }}}} \begin{document} \begin{frame} \begin{tikzpicture}[scale=4,transform shape] \path[name path=p1] (0,0) -- (2,0) ; \path[name path=p2] (1,1) -- (1,-1) ; \begin{scope}\begin{pgfinterruptboundingbox} \path [name intersections={of=p1 and p2,by=cross}]; \clip [invclip] (cross) circle[radius=\crossing]; \draw (0,0) -- (2,0) ; \draw (1,1) -- (1,-1) ; \end{pgfinterruptboundingbox}\end{scope} \path (cross) node[jump crossing,rotate=-90]{}; \end{tikzpicture} \end{frame} \end{document} 

enter image description here

(okular is struggling with the antialiasing here a bit...)