Note

This Mathematica notebook is from the WWW project A Visual Dictionary of Special Plane Curves. Copyright © 1995-2000 by Xah Lee. (http://xahlee.org/)

Packages and Initializations

Needs["ParaPlot`"]
Needs["PlaneCurveFormulas`"]
Needs["PlaneCurveGenerator`"]

Needs["Graphics`ImplicitPlot`"]
(*MathSource Item:0200-529*)

Needs["Graphics`SurfaceOfRevolution`"]	(* 0200-620 *)

SetOptions[ {Plot3D, ParametricPlot3D, Graphics3D},
	Axes->True,
	AxesLabel->{"x","y","z"},
	LightSources :>
	Table[
	{	{Random[],Random[],Random[]},
		Hue[Random[],Random[Real,{.5,1}], Random[Real,{.5,.9}] ]
	},
	{3}
	]
];

Tractrix

Description

ParaPlot[ Tractrix[][t], {t, -1.5, 1.5},
	PlotDot->False,
	CurveColorFunction->{Hue[.65,.8,.8]&},
	CurveStyle->{Thickness[.007]},
	Ticks->{Range[-5,5], Range[-5,5]},
	AspectRatio->Automatic,
	PlotRange->{{-2.2,2.2},{-.1,1.5}}
];

Tracktrix (aka equitangential curve, tractory) is a curve such that any tangent segment from the tangent point on the curve to the curve's asymptote have constant length.
(It is the track made by the rare wheel of a bicycle after a turn.)

Tractrix[][t]

TractrixGenerator[ {0, 1.4}, LastFrameOnly->True];

ParaPlot[ Tractrix[][t], {t, -1.5, 1.5,.1},
	TangentLineLength->2,
	CurveStyle->{Thickness[.007]},
	DotStyle->{GrayLevel[1]},
	CurveColorFunction->{Hue[.6,1,.8]&},
	Ticks->None,
	AspectRatio->Automatic,
	PlotRange->{{-2.2,2.2},{-1,1.5}}
];

Evoluet of Tractrix

The Evolute of Tractrix is Catenary. Below are three different plots showing this, followed by an animation.

ParaPlot[ {Tractrix[][t], Evolute[ Tractrix[][t], t] },
	{t, -1.5, 1.5},
	PlotRange->{{-2.3,2.3},{-.3, 3}},
	AspectRatio->Automatic
];

ParaPlot[ Tractrix[][t], {t, -1.5, 1.5,.1},
	PlotEvolute->True,
	CurveColorFunction->{Hue[.65,.8,.8]&},
	CurveStyle->{Thickness[.007]},
	ParaPlot`DotStyle->{{PointSize[.015], Hue[0]}},
	PlotRange->{{-2.3,2.3},{-.3,3}},
	AspectRatio->Automatic,
	Ticks->{Range[-3,3],Range[-3,3]}
];

ParaPlot[ Tractrix[][t], {t, -1.5, 1.5,.1},
	NormalLineLength->10,
	CurveColorFunction->{Hue[.65,.8,.8]&},
	CurveStyle->{Thickness[.007]},
	ParaPlot`DotStyle->{{PointSize[.015], Hue[0]}},
	PlotRange->{{-2.3,2.3},{-.3,3}},
	AspectRatio->Automatic,
	Ticks->{Range[-3,3],Range[-3,3]}
];

Evolute of catenary animation

Clear[tracktrixGP, catenaryGP]
tracktrixGP = 
      First[ParametricPlot[Evaluate[Tractrix[][t]], {t, -1.5, 1.5}, 
          PlotStyle -> {{Thickness[ .007], Hue[ .65,  .3, 1]}}, 
          DisplayFunction -> Identity]]; 
catenaryGP = 
      First[ParametricPlot[Evaluate[Catenary[][t]], {t, -2, 2}, 
          PlotStyle -> {{Thickness[ .007], Hue[ .65,  .3, 1]}}, 
          DisplayFunction -> Identity]]; 
Do[gp = 
        First[ParaPlot[Tractrix[][t], {t, -1.5, 1.5}, {i}, 
            PlotEvolute -> True, PlotOsculatingCircle -> True, 
            PlotCurve -> False, 
            DotStyle -> {{Hue[0,  .3, 1], PointSize[ .025]}}, 
            DisplayFunction -> Identity]]; 
      Show[Graphics[{tracktrixGP, catenaryGP, gp}], 
        AspectRatio -> Automatic, 
        PlotRange -> {{-2.3, 2.3}, {- .3, 3}}, 
        Background -> GrayLevel[ .1]], {i, 0.01, 1.5, 1.5/5}]
Clear[tracktrixGP, catenaryGP, gp]

Orthogonal to Set of Circles

The tractrix is orthogonal to a set of circles of constant radius whose centers are on the asymptote of the tractrix; conversely, the curve that cuts 90 degrees into a series of identical circles on a line is the tractrix.

ParaPlot[Tractrix[][t], {t, 0, 1.525}, PlotDot -> False, 
        CurveColorFunction -> {Hue[Random[], 1,  .8] &}, 
        CurveStyle -> {Thickness[ .01]}, 
        Epilog -> {Hue[Random[], 1,  .3], 
            Table[Circle[{i,  0},  1,  {Pi/2,  (2*Pi*3)/4}], {i, 0, 
                3.5,  .2}]}, 
        PlotRange -> {{-1.1, 3}, {-1, 1} 1.1}];