How would one draw diagrams like these? I wasn't able to find any documentation regarding the closed loops, or cups and caps in the braids package.

enter image description hereenter image description here

Reference: Knots and Physics, 4th ed. by Louis Kauffman.

  • 2
    The main point of braids is to find the intersections of strands and draw these prettily. The braids always get drawn top to bottom with no loop. Your sketches just look like a bunch of lines/curves and a few bits and bobs. I probably would use tikz-cd because it gives a nice interface for a TikZ matrix and to draw lines between its entries. Commented Jan 17, 2023 at 10:15
  • That is not a braid, but a knot(without crossings, so the knots package it also not helpful). Commented Jan 17, 2023 at 18:35
  • @Qrrbrbirlbel I want to represent a variation of braids actually. Kauffman defines new objects (U_i), which join adjacent strands of a braid. But yes, as you say, these new elements do not belong to the braid group per se. Commented Jan 18, 2023 at 19:27
  • Related: tex.stackexchange.com/questions/360940/… Commented Jan 25, 2023 at 7:25

1 Answer 1

\documentclass[tikz, border=1cm]{standalone}
\begin{tikzpicture}[ultra thick, xscale=0.5]
\foreach \myy in {3,6,...,12}{
\draw[dashed] (-1,\myy) -- (6,\myy);
arc[radius=1, start angle=180, delta angle=-180]
arc[radius=1, start angle=180, delta angle=180]
-- (4,12)
to[out=90, in=90+50, looseness=1.2] (6,12)
to[out=-90+50, in=90-50, looseness=0.8] (6,3)
to[out=-90-50, in=-90, looseness=1.2] (4,3)
arc[radius=1, start angle=0, delta angle=180]
to[out=-90, in=-90-50, looseness=0.8] (6,2.5)
to[out=90-50, in=-90+50, looseness=1] (6,12.5)
to[out=90+50, in=90, looseness=0.8] (2,12)
arc[radius=1, start angle=0, delta angle=-180]
to[out=90, in=90+50, looseness=0.8] (6,13)
to[out=-90+50, in=90-50, looseness=1.2] (6,2)
to[out=-90-50, in=-90, looseness=0.8] (0,3)
-- cycle;
\draw (1,9) circle[radius=1];

A long closed curve

  • Thank you for the answer. I was hoping that there was some easier way to do achieve this using the braids package. Commented Jan 18, 2023 at 19:24

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .