Cycloid

Note

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

Packages and Initializations

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

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

Description

Cycloid is defined as the trace of a point on a circle rolling on a line. It is a special case of trochoid.

Cycloid[][t]

ParaPlot[ -Cycloid[][x], {x, 0, 2 Pi}, AspectRatio->Automatic
];

The Catacaustic of Cycloid with respect to parallel rays coming under its arc is a Cycloid. It is equal to the Diacaustic of the Cycloid with rays coming from the other direction.

ParaPlot[ Cycloid[][t],
	{t, 0, 2 2 Pi,2 2 Pi/60},
	CausticLineLength->2100, CausticOrigin->{Pi,-2000},
	PlotDot->False, LineStyle->{Hue[.43]},
	PlotRange->{{-.2, 4 Pi+.2},{-3, 6}},
	AspectRatio->Automatic
];

ParaPlot[ Cycloid[][t],
	{t, 0, 2 2 Pi,2 2 Pi/60},
	CausticLineLength->-2100, CausticOrigin->{Pi,2000},
	PlotDot->False, LineStyle->{Hue[.43]},
	PlotRange->{{-.2, 4 Pi+.2},{-3, 6}},
	AspectRatio->Automatic
];

The Evolute of a cycloid is the same Cycloid translated, and the Radial of a cycloid is a circle.

ParaPlot[ Cycloid[][t],
	{t, 0, 2 2 Pi, 2 2 Pi/60},
	PlotEvolute->True,
	LineStyle->{Hue[.43]}, AspectRatio->Automatic
];

ParaPlot[ Cycloid[][t],
	{t, 0, 2 2 Pi, 2 2 Pi/60},
	PlotRadial->True,
	LineStyle->{Hue[.43]}, AspectRatio->Automatic
];

(* Radial & Evolute of a Cycloid. Cycloid[][t] *)
Clear[myList];
myList = Range[2 Pi, 2 2 Pi, 2 Pi/30];

Do[
	ParaPlot[ Cycloid[][t],
		{t, 0, 2 2 Pi}, Take[ myList,i],
		PlotRadial->True, PlotEvolute->True,
		LineStyle->{Hue[.43]}, AspectRatio->Automatic,
		PlotRange->{{-2.35, 12.93}, {-4.15, 2.15}}
	];,
	{i,1, Length@myList}
];
Clear[myList];

Fun Graphics

title graphics

ParaPlot[
	Cycloid[][t] + {Pi,0},
	{t, -4 Pi, 4 Pi, 4 Pi/60},
	PedalPoint->{0, 4},
	CurveColorFunction->{Hue[.7,.8,1]&},
	LineStyle->{{Thickness[.002],RGBColor[Random[],Random[], Random[]]}},
	AspectRatio->Automatic,
	PlotStyle->{Hue[.75], Hue[0],Hue[.35,1,.7]},
	PlotRange->All,
	Axes->None
];

ParaPlot[ Cycloid[][x], {x, 0, 2 2 Pi, 2 2 Pi/80},
	ParallelCurveOffset->Range[-2,2,.5],
	AspectRatio->Automatic
];

Off[Power::infy, Infinity::indet, ParametricPlot::pptr]
ParametricPlot[
	Evaluate@ Parallel[Cycloid[][t], t, Range[-5,5,.5]] ,
	{t, -Pi, 3 Pi},
	AspectRatio->Automatic,
	PlotStyle->{Hue[.75], Hue[0],Hue[.35,1,.7]},
	PlotRange->All
];
On[ Power::infy, Infinity::indet, ParametricPlot::pptr]

Table[ Pedal[ Cycloid[][t], t, {0,-i}], {i,0,10}];

ParaPlot[
	Evaluate@ Join[%,{Cycloid[][t]}],
	{t, -3 Pi, 3 Pi},
	AspectRatio->Automatic,
	PlotRange->{{-2 Pi, 2 Pi} 1.2, Automatic},
	PlotStyle->Join[ Table[{Hue[i],Thickness[.005]}, {i,0,1,1/10}],{GrayLevel[1]}],
	Background->Hue[0,0,0]
];