% The following answers were used to create this image: % - http://tex.stackexchange.com/a/45824/5645 - Grid % - http://tex.stackexchange.com/a/373/5645 - Torus \begin{tikzpicture} \tikzstyle{point}=[circle,thick,draw=black,fill=black,inner sep=0pt,minimum width=4pt,minimum height=4pt] \newcommand*{\xMin}{0}% \newcommand*{\xMax}{6}% \newcommand*{\yMin}{0}% \newcommand*{\yMax}{6}% \draw (-3.5,0) .. controls (-3.5,2) and (-1.5,2.5) .. (0,2.5); \draw[xscale=-1] (-3.5,0) .. controls (-3.5,2) and (-1.5,2.5) .. (0,2.5); \draw[rotate=180] (-3.5,0) .. controls (-3.5,2) and (-1.5,2.5) .. (0,2.5); \draw[yscale=-1] (-3.5,0) .. controls (-3.5,2) and (-1.5,2.5) .. (0,2.5); \draw (-2,.2) .. controls (-1.5,-0.3) and (-1,-0.5) .. (0,-.5) .. controls (1,-0.5) and (1.5,-0.3) .. (2,0.2); \draw (-1.75,0) .. controls (-1.5,0.3) and (-1,0.5) .. (0,.5) .. controls (1,0.5) and (1.5,0.3) .. (1.75,0); \begin{scope}[shift={(5,-3)}] \foreach \i in {\xMin,...,\xMax} { \draw [very thin,gray] (\i,\yMin) -- (\i,\yMax) node [below] at (\i,\yMin) {$\i$}; } \foreach \i in {\yMin,...,\yMax} { \draw [very thin,gray] (\xMin,\i) -- (\xMax,\i) node [left] at (\xMin,\i) {$\i$}; } \node (P)[point,red] at (1.2,2.2) {}; \node (Q)[point,red] at (1.2,1.6) {}; \draw[ultra thick, red] (P) -- (Q); \begin{scope}[shift={(2,1)}] \node (P)[point,red] at (1.2,2.2) {}; \node (Q)[point,red] at (1.2,1.6) {}; \draw[ultra thick, red] (P) -- (Q); \end{scope} \draw (-1, -0.5) node[below] {$T \xrightarrow{\text{Liften}} \mathbb{R}^2 / \mathbb{Z}^2$}; \draw[red,dashed] (-5,1.5) ellipse (0.5cm and 1cm); \draw[red] (-5,2.5) arc (-270:-90:0.5 and 1) ; \end{scope} \end{tikzpicture}