Adapting KnotDiagramData to form more visually pleasing diagram

You can use a common 3D trick with double boundary (1, 2, 3):

fun = KnotData[{5, 1}, "SpaceCurve"];
ParametricPlot3D[fun[t], {t, 0, 2 Pi}, PlotPoints -> 100, MaxRecursion -> 1, 
   Axes -> False, Boxed -> False, ViewPoint -> {0, 0, ∞}, 
   ViewVertical -> {0, -1, 0}, PlotRange -> All, 
   Lighting -> {{"Ambient", White}}] /. 
  Line[pts_] :> {White, Tube[pts, 0.1], FaceForm[Opacity[0], Black], 
    Tube[pts, 0.12]}

enter image description here


This is only a first idea how one could proceed

KnotData[{5, 1}, "Name"]

"Solomon seal knot"

fun = KnotData["Solomon seal knot", "SpaceCurve"];

par =
 ParametricPlot3D[fun[t], {t, 0, 2 Pi},
  Axes -> False,
  Boxed -> False,
  ViewPoint -> Above,
  ImageSize -> Medium,
  PlotStyle -> Thickness[0.05]]

enter image description here

ColorNegate @ EdgeDetect @ Image @ par

enter image description here

Tags:

Graphics

Knots