OrthopticSurfaceTwoLeafHyperboloid::usage="The orthoptic surface of a surface is the geometric locus of the points through which pass 3 planes orthogonal to each other and tangents to the original surface. References: AI Assistant; Personal.";
Development:
Obtaining the orthoptic surface of the two leaf hyperboloid -- =1:
2
z
16
2
x
1
2
y
2
Let the tangent plane (where the normal vector is an unitary vector):
Ax+By+Cz==D;
Condition of tangent between a plane and an two leaf hyperboloid centered at the origin:
Tangent plane:
z
0
2
c
x
0
2
a
y
0
2
b
A
D
B
D
C
D
x
0
2
a
A
D
x
0
A
2
a
D
y
0
2
b
B
D
y
0
B
2
b
D
z
0
2
c
C
D
z
0
C
2
c
D
Sustituting the point {,,} in the two leaf hyperboloid’s equation and simplifying:
x
0
y
0
z
0
1
2
c
2
C
2
c
D
1
2
a
2
A
2
a
D
1
2
b
2
B
2
b
D
2
D
2
C
2
c
2
A
2
a
2
B
2
b
So for the two leaf hyperboloid that concerns us:
2
D
2
C
2
A
2
B
So for the three planes we have:
2
D
1
2
C
1
2
A
1
2
B
1
2
D
2
2
C
2
2
A
2
2
B
2
2
D
3
2
C
3
2
A
3
2
B
3
Adding member to member the three equations and considering that the rows of an orthogonal matrix are also unit vectors:
2
D
1
2
D
2
2
D
3
2
C
1
2
C
2
2
C
3
2
A
1
2
A
2
2
A
3
2
B
1
2
B
2
2
B
3
2
D
1
2
D
2
2
D
3
Since the three normal vectors are mutually orthogonal and unitary, (and by properties of orthogonal matrices) it is simplified to:
In[]:=
2
D
1
2
D
2
2
D
3
2
(x+y+z)
A
1
B
1
C
1
2
(x+y+z)
A
2
B
2
C
2
2
(x+y+z)
A
3
B
3
C
3
2
D
1
2
D
2
2
D
3
2
x
2
A
1
2
x
2
A
2
2
x
2
A
3
A
1
B
1
2
y
2
B
1
A
2
B
2
2
y
2
B
2
A
3
B
3
2
y
2
B
3
A
1
C
1
B
1
C
1
2
z
2
C
1
A
2
C
2
B
2
C
2
2
z
2
C
2
A
3
C
3
B
3
C
3
2
z
2
C
3
2
D
1
2
D
2
2
D
3
2
A
1
2
A
2
2
A
3
2
x
2
B
1
2
B
2
2
B
3
2
y
2
C
1
2
C
2
2
C
3
2
z
A
1
B
1
A
2
B
2
A
3
B
3
A
1
C
1
A
2
C
2
A
3
C
3
B
1
C
1
B
2
C
2
B
3
C
3
2
D
1
2
D
2
2
D
3
2
x
2
y
2
z
So it turns out how we expected concentric sphere: ++ == -- which is the orthoptic surface of the two leaf hyperboloid. There are many similarities in 2D with the hyperbola and its orthoptic curve, the circumference + =-. Finally, the equation sought is:
2
x
2
y
2
z
2
c
2
a
2
b
2
x
2
y
2
a
2
b
2
x
2
y
2
z
Animation:
In[]:=
ManipulateModule{a2=1,b2=2,c2=16,u1,u2,u3,r1,r2,r3,d1,d2,d3,q},u1[α_,β_]:={Sin[α]Sin[β],Cos[β],Cos[α]Sin[β]};u2[α_]:={Cos[α],0,-Sin[α]};u3[α_,β_]:={Sin[α]Cos[β],-Sin[β],Cos[α]Cos[β]};r1[α_,β_]:=-a2u1[α,β][[1]]^2-b2u1[α,β][[2]]^2+c2u1[α,β][[3]]^2;r2[α_]:=-a2u2[α][[1]]^2-b2u2[α][[2]]^2+c2u2[α][[3]]^2;r3[α_,β_]:=-a2u3[α,β][[1]]^2-b2u3[α,β][[2]]^2+c2u3[α,β][[3]]^2;d1[α_,β_]:= + + = 3",Bold,Large],Style[Row[{"Tangency condition: ",TraditionalForm[16n-9n-4n>0]}],14],{{α,0.3,"α angle (Turn H)"},0.000001,2π,0.01},Delimiter,{{β,π/6,"β angle (Turn V)"},-π/2,π/2,0.01},ControlPlacement->Top,AutorunSequencing->{1,2}
r1[α,β]
;d2[α_]:=r2[α]
;d3[α_,β_]:=r3[α,β]
;q[α_,β_]:=d1[α,β]u1[α,β]+d2[α]u2[α]+d3[α,β]u3[α,β];ColumnShowParametricPlot3D[Sinh[v]Cos[u],2
Sinh[v]Sin[u],4Cosh[v],{u,0,2π},{v,-6,6},ColorFunction->"SolarColors",Mesh->None,MaxRecursion->2,PlotPoints->50],ParametricPlot3D[Sinh[v]Cos[u],2
Sinh[v]Sin[u],-4Cosh[v],{u,0,2π},{v,-6,6},ColorFunction->"SolarColors",Mesh->None,MaxRecursion->2,PlotPoints->50],ParametricPlot3Dc2-a2-b2
Cos[u]Sin[v],c2-a2-b2
Sin[u]Sin[v],c2-a2-b2
Cos[v],{u,0,2π},{v,0,π},ColorFunction->"BlueGreenYellow",PlotStyle->Opacity[0.6],Mesh->None,MaxRecursion->2,If[r1[α,β]>0,Graphics3D[{Gray,Opacity[0.6],Hyperplane[u1[α,β],d1[α,β]]}],Nothing],If[r2[α]>0,Graphics3D[{Gray,Opacity[0.6],Hyperplane[u2[α],d2[α]]}],Nothing],If[r3[α,β]>0,Graphics3D[{Gray,Opacity[0.6],Hyperplane[u3[α,β],d3[α,β]]}],Nothing],If[r1[α,β]>0&&r2[α]>0&&r3[α,β]>0,Graphics3D[{Black,Thick,Sphere[q[α,β],0.15],Line[{q[α,β],q[α,β]+3u1[α,β]}],Line[{q[α,β],q[α,β]+3u2[α]}],Line[{q[α,β],q[α,β]+3u3[α,β]}]}],Nothing],BoxRatios->Automatic,Axes->True,Boxed->False,AxesOrigin->{0,0,0},AxesLabel->{x,y,z},PlotRange->10,ImageSize->900,ViewPoint->{1.3,-2.4,2.},Style["Orthoptic surface: 2
x
2
y
2
z
2
z
2
x
2
y