In[]:=
SheafOfPlanes::usage="This notebook presents a set of planes on a straight line. The straight line is known as the axis of the sheaf, and the sheaf is sometimes called a pencil: X + + λX + = 0. Where the parameter λ can take any value. References: Wolfram MathWorld: Sheaf of Planes; Hollis, Selwyn. CalcLabs with Mathematica. Multivariable Calculus. Brooks, Cole: 4a.Ed: pp. 22, 23, 2010; Personal. ";AnimateX={x,y,z};n1={2,-1,5};n2={3,-5,7};d1=3;d2=-9;soln=Solve[{X.n1+d1==0,X.n2+d2==0},{x,y}]//Flatten;r0={x,y,z}/.soln/.z0//Flatten;v11=Cross[n1,n2];r1[u_]:=r0+v11;Show[Graphics3D[Tube[{r1[-5],r1[5]},0.4]],ContourPlot3D[(X.n1+d1)+λ(X.n2+d2)==0,{x,-10,10},{y,-10,10},{z,-10,10},MeshNone,ContourStyle->Directive[Orange,Opacity[0.3],Specularity[White,20]]],PlotRangeAll,BoxRatiosAutomatic,AxesLabel->(Style[#,15,Blue]&/@{"X","Y","Z"}),AxesOrigin{0,0,0},AxesTrue,BoxedFalse,PerformanceGoal"Quality"],{λ,-5,5,0.1},AnimationRunningFalse
n
1
p
1
n
2
p
2
u
5
Out[]=
Another version would be:
In[]:=
AnimateX={x,y,z};n1={2,-1,5};n2={3,-5,7};d1=3;d2=-9;soln=Solve[{X.n1+d1==0,X.n2+d2==0},{x,y}]//Flatten;r0={x,y,z}/.soln/.z0//Flatten;v11=Cross[n1,n2];r1[u_]:=r0+v11;Show[Graphics3D[Tube[{r1[-5],r1[5]},0.4]],Table[ContourPlot3D[(X.n1+d1)+λ(X.n2+d2)==0,{x,-10,10},{y,-10,10},{z,-15,15},MeshNone,ColorFunction(ColorData[{"TemperatureMap","Reverse"}][#3]&)],{λ,-10,t1,0.3}],PlotRangeAll,BoxRatiosAutomatic,AxesLabel->(Style[#,15,Blue]&/@{"X","Y","Z"}),AxesOrigin{0,0,0},AxesTrue,BoxedFalse,PerformanceGoal"Quality"],{t1,-10,10,0.3},AnimationRunningFalse
u
5
Out[]=