\documentclass{article} \usepackage{tikz} \usetikzlibrary{calc} \begin{document} \tikzstyle{reverseclip}=[insert path={(current page.north east) -- (current page.south east) -- (current page.south west) -- (current page.north west) -- (current page.north east)} ] \tikzset{ venn0/.code={ \begin{scope} \begin{pgfinterruptboundingbox} \path [clip] (-90:0.7cm) circle [radius=1cm] [reverseclip]; \path [clip] (30:0.7cm) circle [radius=1cm] [reverseclip]; \path [clip] (-210:0.7cm) circle [radius=1cm] [reverseclip]; \end{pgfinterruptboundingbox} \fill [orange] (-2,-2) rectangle (2,2); \end{scope} }, venn1/.code={ \begin{scope} \begin{pgfinterruptboundingbox} \path [clip] (-90:0.7cm) circle [radius=1cm]; \path [clip] (30:0.7cm) circle [radius=1cm] [reverseclip]; \path [clip] (-210:0.7cm) circle [radius=1cm] [reverseclip]; \end{pgfinterruptboundingbox} \fill [orange] (-2,-2) rectangle (2,2); \end{scope} }, venn2/.code={ \begin{scope} \begin{pgfinterruptboundingbox} \path [clip] (-90:0.7cm) circle [radius=1cm] [reverseclip]; \path [clip] (30:0.7cm) circle [radius=1cm]; \path [clip] (-210:0.7cm) circle [radius=1cm] [reverseclip]; \end{pgfinterruptboundingbox} \fill [orange] (-2,-2) rectangle (2,2); \end{scope} }, venn3/.code={ \begin{scope} \begin{pgfinterruptboundingbox} \path [clip] (-90:0.7cm) circle [radius=1cm] [reverseclip]; \path [clip] (30:0.7cm) circle [radius=1cm] [reverseclip]; \path [clip] (-210:0.7cm) circle [radius=1cm]; \end{pgfinterruptboundingbox} \fill [orange] (-2,-2) rectangle (2,2); \end{scope} }, venn4/.code={ \begin{scope} \begin{pgfinterruptboundingbox} \path [clip] (-90:0.7cm) circle [radius=1cm] [reverseclip]; \path [clip] (30:0.7cm) circle [radius=1cm] ; \path [clip] (-210:0.7cm) circle [radius=1cm] ; \end{pgfinterruptboundingbox} \fill [orange] (-2,-2) rectangle (2,2); \end{scope} }, venn5/.code={ \begin{scope} \begin{pgfinterruptboundingbox} \path [clip] (-90:0.7cm) circle [radius=1cm]; \path [clip] (30:0.7cm) circle [radius=1cm] [reverseclip]; \path [clip] (-210:0.7cm) circle [radius=1cm]; \end{pgfinterruptboundingbox} \fill [orange] (-2,-2) rectangle (2,2); \end{scope} }, venn6/.code={ \begin{scope} \begin{pgfinterruptboundingbox} \path [clip] (-90:0.7cm) circle [radius=1cm]; \path [clip] (30:0.7cm) circle [radius=1cm] ; \path [clip] (-210:0.7cm) circle [radius=1cm] [reverseclip]; \end{pgfinterruptboundingbox} \fill [orange] (-2,-2) rectangle (2,2); \end{scope} }, venn7/.code={ \begin{scope} \begin{pgfinterruptboundingbox} \path [clip] (-90:0.7cm) circle [radius=1cm]; \path [clip] (30:0.7cm) circle [radius=1cm] ; \path [clip] (-210:0.7cm) circle [radius=1cm]; \end{pgfinterruptboundingbox} \fill [orange] (-2,-2) rectangle (2,2); \end{scope} }, vennoutlines/.code={ \draw (-90:0.7cm) circle [radius=1cm]; \draw (30:0.7cm) circle [radius=1cm]; \draw (-210:0.7cm) circle [radius=1cm]; } } \noindent% \foreach \a in {0,1} \foreach \b in {0,1} \foreach \c in {0,1} \foreach \d in {0,1} \foreach \e in {0,1} \foreach \f in {0,1} \foreach \g in {0,1} \foreach \h in {0,1}{% \begin{tikzpicture}[remember picture, scale=0.2] \ifnum\a=0 \tikzset{venn0} \fi \ifnum\b=0 \tikzset{venn1} \fi \ifnum\c=0 \tikzset{venn2} \fi \ifnum\d=0 \tikzset{venn3} \fi \ifnum\e=0 \tikzset{venn4} \fi \ifnum\f=0 \tikzset{venn5} \fi \ifnum\g=0 \tikzset{venn6} \fi \ifnum\h=0 \tikzset{venn7} \fi \tikzset{vennoutlines} \end{tikzpicture} } \end{document}