Constructions tirées de la page deltoid de Xah Lee.
Needs["ParaPlot`"];
Needs["PlaneCurveFormulas`"];
Needs["PlaneCurveGenerator`"];
La deltoïde (ou encore tricuspide) est un cas particulier d’hypocycloïde (à trois rebroussements).
Représentation paramétrique: x=2/3cost + 1/3cos 2t, y=2/3sint+1/3sin 2t.
Équation cartésienne: (x2+y2)2−8x(x2−3y2)+18(x2+y2)−27=0.
ParaPlot[ Rotate[Deltoid[][t], -Pi/2], {t,0, 2 Pi, 2 Pi/120}, SecantConnection → {60,1}, PlotDot → False, PlotCurve → False, Axes → False, AspectRatio → Automatic ]
DeltoidGenerator[ {0, 5.4, .05}, LastFrameOnly → True ]
ParaPlot[ Deltoid[][t], {t,0, 2 Pi}, AspectRatio → Automatic ]
DeltoidEqCart = (x^2+y^2)^2-8x(x^2-3y^2)+18(x^2+y^2)-27;
ContourPlot[ DeltoidEqCart == 0, {x,-3,3}, {y,-3,3}, PlotPoints → 50 ]
ContourPlot[ DeltoidEqCart, {x,-3,3}, {y,-3,3}, PlotPoints → 40 ]
Les caustiques d’une deltoïde sont des astroïdes.
theta = 1.1; lightSource = 20000{Cos[theta],Sin[theta]}; p = N[2Pi/12]; d = N[Degree]; gp1 = First[ ParaPlot[Deltoid[][t], {t, 0, 2 Pi}, Which[N[0 ≤ theta < 30 d], Range @@ {-4p+0.001`,4p-0.001`,0.1`}, N[30 d ≤ theta < 90 d], Range @@ {0+0.001`,4 p-0.001`,0.1`}, N[90 d ≤ theta < 150 d], Range @@ {0+0.001`,8p-0.001`,0.1`}, N[150 d ≤ theta ≤ 180 d], Range @@ {4p+0.001`,8p-0.001`,0.1`}], CausticLineLength → 30000, CausticOrigin → lightSource, CausticLineStyle → {Hue[0]}, PlotCurve → True, PlotDot → False, CurveColorFunction → (GrayLevel[1] &), AspectRatio → Automatic, PlotRange → {{-1.5,1.6},{-1.6,1.6}}, DisplayFunction → Identity]]; gp2 = First[ ParaPlot[Deltoid[][t], {t, 0, 2Pi}, Which[N[0 ≤ theta < 30 d], Range @@ {4p+0.001`,8p-0.001`,0.1`}, N[30 d ≤ theta < 90 d], Range @@ {4p+0.001`,12p-0.001`,0.1`}, N[90 d ≤ theta < 150 d], Range @@ {-4p+0.001`,0-0.001`,0.1`}, N[150 d ≤ theta ≤ 180 d], Range @@ {-4p+0.001`,4p-0.001`,0.1`}], CausticLineLength → 30000, CausticOrigin → -lightSource, PlotCurve → True, CausticLineStyle → {Hue[0]}, PlotCurve → False, PlotDot → False, CurveColorFunction → (GrayLevel[1] &), AspectRatio → Automatic, PlotRange → {{-1.5,1.6}, {-1.6,1.6}}, DisplayFunction → Identity]]; Show[Graphics[{gp1, gp2}], PlotRange → {{-2, 2}, {-2, 2}}, Axes → False, AspectRatio → Automatic, PlotRange → {{-1.5,1.6}, {-1.6,1.6}}, Background → Hue[0, 0, 0] ]
Et bien, c’est une deltoïde !
ParaPlot[ Deltoid[][t], {t, 0.001, 2 Pi, 2 Pi/(3 20)}, PlotEvolute → True, AspectRatio → Automatic ]
Ce que l’on peut voir autrement, de façon plus sophistiquée...
gp1=First[ParaPlot[ Rotate[Deltoid[][t], Pi/2], {t, 0.001, 2Pi, (2Pi)/(3 30)}, PlotCurve → False, PlotDot → False, PlotOsculatingCircle → True, LineStyle → { RGBColor[RandomReal[], RandomReal[], RandomReal[]]}, CurveColorFunction → {Hue[0] &}, DisplayFunction → Identity] ]; gp2=First[ParaPlot[ Rotate[Deltoid[][t], Pi/2], {t, 0.001, 2Pi, (2Pi)/(3 30)}, PlotCurve → False, PlotEvolute → True, LineStyle → {GrayLevel[0]}, DisplayFunction → Identity] ]; gp2=DeleteCases[gp2, Line[___], -1]; Show[Graphics[{gp1, gp2}], Background → Hue[0, 0, 0], PlotRange → All, AspectRatio → Automatic, Axes → False ]
ParaPlot[ Deltoid[][t], {t, 0, 2 Pi, 2 Pi/(3 100)}, InversionCircle → {{0,0},1}, PlotDot → False, CurveColorFunction → {Hue[.7,.9,.9]&}, AspectRatio → Automatic ]
ParaPlot[ { Deltoid[][t], Inversion[Deltoid[][t], {{0,0},.5}] }, {t, 0, 2 Pi}, PlotStyle → { {Hue[.65]}, {Hue[.0], Thickness[.005]} }, Epilog → {Hue[.18], Circle[{0,0},.5]}, AspectRatio → Automatic, Ticks → {{-1,-.5,.5,1},{-1,-.5,.5,1}} ]
On obtient un trifolium.
ParaPlot[ Deltoid[][t], {t,0, 2 Pi, 2 Pi/(30 3)}, PedalPoint → {0,0}, PlotDot → False, PlotCurve → False, Axes → False, AspectRatio → Automatic ]
C’est encore un trifolium...
ParaPlot[ Rotate[Deltoid[][t], -Pi/2], {t, 0.001, 2Pi, 2Pi/(30 3)}, PlotRadial → True, PlotDot → False, CurveColorFunction → {Hue[0, 0, 0] &}, LineStyle → { RGBColor[RandomReal[], RandomReal[], RandomReal[]] }, Axes → False, AspectRatio → Automatic ]
La deltoïde est l’enveloppe des droites de Simson d’un triangle fixé (Robert Simson, 1687-1768).
DeltoidGenerator2[ {1, 3, 3.5}, {0, 3.2, 5/30}, LastFrameOnly → True ]
DeltoidGenerator2[ {1, 3, 4.8}, {0, 5.7, 5/30}, LastFrameOnly → True ]
DeltoidGenerator2[ {1, 3, 4}, {2, 6, 3/50}, LastFrameOnly → True, NumberOfFrames → 1 ]
Voici la deltoïde accompagnée des courbes paramétrées dérivées d’ordre 1 et 2.
ParaPlot[ Evaluate@{ D[Deltoid[][t], {t, 2}], D[Deltoid[][t], {t, 1}], Deltoid[][t] }, {t, 0, 2 Pi}, AspectRatio → Automatic ]