<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://katlas.org/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=DroneLacel</id>
	<title>Knot Atlas - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://katlas.org/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=DroneLacel"/>
	<link rel="alternate" type="text/html" href="https://katlas.org/wiki/Special:Contributions/DroneLacel"/>
	<updated>2026-04-25T09:05:27Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.39.6</generator>
	<entry>
		<id>https://katlas.org/index.php?title=Drawing_with_TubePlot&amp;diff=1693680</id>
		<title>Drawing with TubePlot</title>
		<link rel="alternate" type="text/html" href="https://katlas.org/index.php?title=Drawing_with_TubePlot&amp;diff=1693680"/>
		<updated>2009-05-22T07:42:41Z</updated>

		<summary type="html">&lt;p&gt;DroneLacel: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;http://www.texteltdomdar.com &lt;br /&gt;
{{Manual TOC Sidebar}}&lt;br /&gt;
&lt;br /&gt;
{{Startup Note}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--$$?TubePlot$$--&amp;gt;&lt;br /&gt;
&amp;lt;!--Robot Land, no human edits to &amp;quot;END&amp;quot;--&amp;gt;&lt;br /&gt;
{{HelpLine|&lt;br /&gt;
n  = 1 |&lt;br /&gt;
in = &amp;lt;nowiki&amp;gt;TubePlot&amp;lt;/nowiki&amp;gt; |&lt;br /&gt;
out= &amp;lt;nowiki&amp;gt;TubePlot[gamma, {t, t0, t1}, r, opts] plots the space curve gamma with the variable t running from t0 to t1, as a tube of radius r. The available options are TubeSubdivision, TubeFraming and TubePlotPrelude. All other options are passed on to Graphics3D. TubePlot[TorusKnot[m, n], opts] produces a tube plot of the (m,n) torus knot.&amp;lt;/nowiki&amp;gt;}}&lt;br /&gt;
&amp;lt;!--END--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Thus here&#039;s a thin unknot:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--$$Show[TubePlot[{Cos[t], Sin[t], 0}, {t, 0, 2Pi}, 0.1]]$$--&amp;gt;&lt;br /&gt;
&amp;lt;!--Robot Land, no human edits to &amp;quot;END&amp;quot;--&amp;gt;&lt;br /&gt;
{{Graphics|&lt;br /&gt;
n  = 3 |&lt;br /&gt;
in = &amp;lt;nowiki&amp;gt;Show[TubePlot[{Cos[t], Sin[t], 0}, {t, 0, 2Pi}, 0.1]]&amp;lt;/nowiki&amp;gt; |&lt;br /&gt;
img= Drawing_with_TubePlot_Out_2.gif |&lt;br /&gt;
out= &amp;lt;nowiki&amp;gt;-Graphics3D-&amp;lt;/nowiki&amp;gt;}}&lt;br /&gt;
&amp;lt;!--END--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--$$?TubeSubdivision$$--&amp;gt;&lt;br /&gt;
&amp;lt;!--Robot Land, no human edits to &amp;quot;END&amp;quot;--&amp;gt;&lt;br /&gt;
{{HelpLine|&lt;br /&gt;
n  = 4 |&lt;br /&gt;
in = &amp;lt;nowiki&amp;gt;TubeSubdivision&amp;lt;/nowiki&amp;gt; |&lt;br /&gt;
out= &amp;lt;nowiki&amp;gt;TubeSubdivision is an option for TubePlot. TubePlot[__, TubeSubdivision -&amp;gt; {l, m} draws the tube subdivided to l pieces lengthwise and m pieces around. The default is TubeSubdivision -&amp;gt; {50, 12}.&amp;lt;/nowiki&amp;gt;}}&lt;br /&gt;
&amp;lt;!--END--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--$$?TubeFraming$$--&amp;gt;&lt;br /&gt;
&amp;lt;!--Robot Land, no human edits to &amp;quot;END&amp;quot;--&amp;gt;&lt;br /&gt;
{{HelpLine|&lt;br /&gt;
n  = 5 |&lt;br /&gt;
in = &amp;lt;nowiki&amp;gt;TubeFraming&amp;lt;/nowiki&amp;gt; |&lt;br /&gt;
out= &amp;lt;nowiki&amp;gt;TubeFraming is an option for TubePlot. TubePlot[gamma, {t, __}, _, TubeFraming -&amp;gt; n] sets the framing of the tube (visible when TubeSubdivision -&amp;gt; {l, m} with small m) to be the vector n, which in itself may be a function of t. Thus TubeFraming -&amp;gt; {0,0,1} is &amp;quot;blackboard framing&amp;quot;. TubeFraming -&amp;gt; Normal (default) uses the normal vector of the curve gamma.&amp;lt;/nowiki&amp;gt;}}&lt;br /&gt;
&amp;lt;!--END--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--$$?TubePlotPrelude$$--&amp;gt;&lt;br /&gt;
&amp;lt;!--Robot Land, no human edits to &amp;quot;END&amp;quot;--&amp;gt;&lt;br /&gt;
{{HelpLine|&lt;br /&gt;
n  = 6 |&lt;br /&gt;
in = &amp;lt;nowiki&amp;gt;TubePlotPrelude&amp;lt;/nowiki&amp;gt; |&lt;br /&gt;
out= &amp;lt;nowiki&amp;gt;TubePlotPrelude is an option for TubePlot. Its value is passed to Graphics3D before the main part of the plot, allowing to set various graphics options. For example, TubePlotPrelude -&amp;gt; EdgeForm[{}] will suppress the drawing of edges between the polygons making up the tube. The default is TubePlotPrelude -&amp;gt; {}.&amp;lt;/nowiki&amp;gt;}}&lt;br /&gt;
&amp;lt;!--END--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Here&#039;s the same unknot, made thicker and not as smooth:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--$$Show[TubePlot[&lt;br /&gt;
  {Cos[t], Sin[t], 0}, {t, 0, 2Pi}, 0.3, TubeSubdivision -&amp;gt; {6, 3}&lt;br /&gt;
]]$$--&amp;gt;&lt;br /&gt;
&amp;lt;!--Robot Land, no human edits to &amp;quot;END&amp;quot;--&amp;gt;&lt;br /&gt;
{{Graphics|&lt;br /&gt;
n  = 8 |&lt;br /&gt;
in = &amp;lt;nowiki&amp;gt;Show[TubePlot[&lt;br /&gt;
  {Cos[t], Sin[t], 0}, {t, 0, 2Pi}, 0.3, TubeSubdivision -&amp;gt; {6, 3}&lt;br /&gt;
]]&amp;lt;/nowiki&amp;gt; |&lt;br /&gt;
img= Drawing_with_TubePlot_Out_7.gif |&lt;br /&gt;
out= &amp;lt;nowiki&amp;gt;-Graphics3D-&amp;lt;/nowiki&amp;gt;}}&lt;br /&gt;
&amp;lt;!--END--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Let&#039;s play with the framing now:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--$$Show[TubePlot[&lt;br /&gt;
  {Cos[t], Sin[t], 0}, {t, 0, 2Pi}, 0.2,&lt;br /&gt;
  TubeSubdivision -&amp;gt; {50, 2},&lt;br /&gt;
  TubeFraming -&amp;gt; {Cos[2t]Cos[t], Cos[2t]Sin[t], Sin[3t]}&lt;br /&gt;
]]$$--&amp;gt;&lt;br /&gt;
&amp;lt;!--Robot Land, no human edits to &amp;quot;END&amp;quot;--&amp;gt;&lt;br /&gt;
{{Graphics|&lt;br /&gt;
n  = 10 |&lt;br /&gt;
in = &amp;lt;nowiki&amp;gt;Show[TubePlot[&lt;br /&gt;
  {Cos[t], Sin[t], 0}, {t, 0, 2Pi}, 0.2,&lt;br /&gt;
  TubeSubdivision -&amp;gt; {50, 2},&lt;br /&gt;
  TubeFraming -&amp;gt; {Cos[2t]Cos[t], Cos[2t]Sin[t], Sin[3t]}&lt;br /&gt;
]]&amp;lt;/nowiki&amp;gt; |&lt;br /&gt;
img= Drawing_with_TubePlot_Out_9.gif |&lt;br /&gt;
out= &amp;lt;nowiki&amp;gt;-Graphics3D-&amp;lt;/nowiki&amp;gt;}}&lt;br /&gt;
&amp;lt;!--END--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Here&#039;s an example that uses a prelude and passes options on to &amp;lt;code&amp;gt;Graphics3D&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--$$Show[TubePlot[&lt;br /&gt;
  {Cos[2t], Sin[2t], 0} +&lt;br /&gt;
    0.5{Cos[3t]Cos[2t], Cos[3t]Sin[2t], -Sin[3t]},&lt;br /&gt;
  {t, 0, 2Pi}, 1/3,&lt;br /&gt;
  TubeSubdivision -&amp;gt; {280, 12}, TubeFraming -&amp;gt; {0,0,1},&lt;br /&gt;
  TubePlotPrelude -&amp;gt; EdgeForm[{}],&lt;br /&gt;
  Boxed -&amp;gt; False, ViewPoint -&amp;gt; {0,0,1}&lt;br /&gt;
]]$$--&amp;gt;&lt;br /&gt;
&amp;lt;!--Robot Land, no human edits to &amp;quot;END&amp;quot;--&amp;gt;&lt;br /&gt;
{{Graphics|&lt;br /&gt;
n  = 12 |&lt;br /&gt;
in = &amp;lt;nowiki&amp;gt;Show[TubePlot[&lt;br /&gt;
  {Cos[2t], Sin[2t], 0} +&lt;br /&gt;
    0.5{Cos[3t]Cos[2t], Cos[3t]Sin[2t], -Sin[3t]},&lt;br /&gt;
  {t, 0, 2Pi}, 1/3,&lt;br /&gt;
  TubeSubdivision -&amp;gt; {280, 12}, TubeFraming -&amp;gt; {0,0,1},&lt;br /&gt;
  TubePlotPrelude -&amp;gt; EdgeForm[{}],&lt;br /&gt;
  Boxed -&amp;gt; False, ViewPoint -&amp;gt; {0,0,1}&lt;br /&gt;
]]&amp;lt;/nowiki&amp;gt; |&lt;br /&gt;
img= Drawing_with_TubePlot_Out_11.gif |&lt;br /&gt;
out= &amp;lt;nowiki&amp;gt;-Graphics3D-&amp;lt;/nowiki&amp;gt;}}&lt;br /&gt;
&amp;lt;!--END--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The last example serves as the basis for the definition of &amp;lt;code&amp;gt;TubePlot[TorusKnot[m, n]]&amp;lt;/code&amp;gt;. Here&#039;s a final example:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--$$Show[TubePlot[TorusKnot[3, 5]]]$$--&amp;gt;&lt;br /&gt;
&amp;lt;!--Robot Land, no human edits to &amp;quot;END&amp;quot;--&amp;gt;&lt;br /&gt;
{{Graphics|&lt;br /&gt;
n  = 14 |&lt;br /&gt;
in = &amp;lt;nowiki&amp;gt;Show[TubePlot[TorusKnot[3, 5]]]&amp;lt;/nowiki&amp;gt; |&lt;br /&gt;
img= Drawing_with_TubePlot_Out_13.gif |&lt;br /&gt;
out= &amp;lt;nowiki&amp;gt;-Graphics3D-&amp;lt;/nowiki&amp;gt;}}&lt;br /&gt;
&amp;lt;!--END--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span id=Standalone_TubePlot&amp;gt;&lt;br /&gt;
==== Standalone &amp;lt;code&amp;gt;TubePlot&amp;lt;/code&amp;gt; ====&lt;br /&gt;
&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
There may be some independent interest in the routine &amp;lt;code&amp;gt;TubePlot&amp;lt;/code&amp;gt;, and hence it is available also as an independent package. Here it is: [[Media:TubePlot.m|TubePlot.m]] ([[Image:TubePlot.m|file description]]).&lt;/div&gt;</summary>
		<author><name>DroneLacel</name></author>
	</entry>
</feed>