4 deleted 70 characters in body edited Apr 11 '13 at 10:52 J. M. will be back soon♦ 100k1010 gold badges317317 silver badges476476 bronze badges The idea is quite simple: Since any great circle can be parametrized as $$\cos(\theta)u + \sin(\theta)v$$ where $$u$$ and $$v$$ are two orthonormal vectors. One can start with $$u=\{1,0,0\}, v=\{0,1,0\}$$ and use RotationTransform to get out of the xy plane, then use RotationTransform again to spin around the z-axis to get all great circles with desired inclination. Manipulate[ (* Rotation deg\[Degree]deg° out of the xy plane *) rx = RotationTransform[deg Degree, {0, 1, 0}]; (* Spin around z axis *) rz = RotationTransform[\[Phi]RotationTransform[ϕ Degree, {0, 0, 1}]; {u, v} = rz@rx@rz @ rx @ {{1, 0, 0}, {0, 1, 0}}; Show[{ Graphics3D[{ {Opacity[0.4], Sphere[]}, {Opacity[0.5], Polygon[{ {-1, -1, 0}, {1, -1, 0}, {1, 1, 0}, {-1, 1, 0}}]}, {Arrow[{{0, 0, 0}, u}], Arrow[{{0, 0, 0}, v}]} }], ParametricPlot3D[{ Cos[\[Theta]]Cos[θ] u + Sin[\[Theta]]Sin[θ] v, (* The great circle in question *) {Cos[\[Theta]]Cos[θ], Sin[\[Theta]]Sin[θ], 0}, (* Normal unit circle *) RotationTransform[\[Theta]RotationTransform[θ, {0, 0, 1}] /@ {u, -u} (* The red dashed stuff *) }, {\[Theta]θ, -Pi, Pi}, PlotStyle -> {Directive[Blue, Thick], Black, Directive[ RedDirective[Red, Dashed]}] }, Axes -> True, AxesLabel -> {"x", "y", "z"}], {{deg, 15, "Inclination"}, -180, 180}, {\[Phi]ϕ, 0, 360}] The idea is quite simple: Since any great circle can be parametrized as $$\cos(\theta)u + \sin(\theta)v$$ where $$u$$ and $$v$$ are two orthonormal vectors. One can start with $$u=\{1,0,0\}, v=\{0,1,0\}$$ and use RotationTransform to get out of the xy plane, then use RotationTransform again to spin around the z-axis to get all great circles with desired inclination. Manipulate[ (* Rotation deg\[Degree] out of the xy plane *) rx = RotationTransform[deg Degree, {0, 1, 0}]; (* Spin around z axis *) rz = RotationTransform[\[Phi] Degree, {0, 0, 1}]; {u, v} = rz@rx@{{1, 0, 0}, {0, 1, 0}}; Show[{ Graphics3D[{ {Opacity[0.4], Sphere[]}, {Opacity[0.5], Polygon[{ {-1, -1, 0}, {1, -1, 0}, {1, 1, 0}, {-1, 1, 0}}]}, {Arrow[{{0, 0, 0}, u}], Arrow[{{0, 0, 0}, v}]} }], ParametricPlot3D[{ Cos[\[Theta]] u + Sin[\[Theta]] v, (* The great circle in question *) {Cos[\[Theta]], Sin[\[Theta]], 0}, (* Normal unit circle *) RotationTransform[\[Theta], {0, 0, 1}] /@ {u, -u} (* The red dashed stuff *) }, {\[Theta], -Pi, Pi}, PlotStyle -> {Directive[Blue,Thick], Black, Directive[ Red, Dashed]}] }, Axes -> True, AxesLabel -> {"x", "y", "z"}], {{deg, 15, "Inclination"}, -180, 180}, {\[Phi], 0, 360}] The idea is quite simple: Since any great circle can be parametrized as $$\cos(\theta)u + \sin(\theta)v$$ where $$u$$ and $$v$$ are two orthonormal vectors. One can start with $$u=\{1,0,0\}, v=\{0,1,0\}$$ and use RotationTransform to get out of the xy plane, then use RotationTransform again to spin around the z-axis to get all great circles with desired inclination. Manipulate[ (* Rotation deg° out of the xy plane *) rx = RotationTransform[deg Degree, {0, 1, 0}]; (* Spin around z axis *) rz = RotationTransform[ϕ Degree, {0, 0, 1}]; {u, v} = rz @ rx @ {{1, 0, 0}, {0, 1, 0}}; Show[{ Graphics3D[{ {Opacity[0.4], Sphere[]}, {Opacity[0.5], Polygon[{ {-1, -1, 0}, {1, -1, 0}, {1, 1, 0}, {-1, 1, 0}}]}, {Arrow[{{0, 0, 0}, u}], Arrow[{{0, 0, 0}, v}]} }], ParametricPlot3D[{ Cos[θ] u + Sin[θ] v, (* The great circle in question *) {Cos[θ], Sin[θ], 0}, (* Normal unit circle *) RotationTransform[θ, {0, 0, 1}] /@ {u, -u} (* The red dashed stuff *) }, {θ, -Pi, Pi}, PlotStyle -> {Directive[Blue, Thick], Black, Directive[Red, Dashed]}] }, Axes -> True, AxesLabel -> {"x", "y", "z"}], {{deg, 15, "Inclination"}, -180, 180}, {ϕ, 0, 360}] 3 added 3 characters in body edited Apr 10 '13 at 17:36 J. M. will be back soon♦ 100k1010 gold badges317317 silver badges476476 bronze badges The idea is quite simple: Since any great circle can be parametrized as $$cos(\theta)u + sin(\theta)v$$$$\cos(\theta)u + \sin(\theta)v$$ where $$u$$ and $$v$$ are two orthonormal vectors one. One can start with $$u=\{1,0,0\}, v=\{0,1,0\}$$ and use RotationTransform to get out of the xy plane, then use RotationTransform again to spin around the z-axis to get all great circles with desired inclination. Manipulate[ (* Rotation deg\[Degree] out of the xy plane *) rx = RotationTransform[deg Degree, {0, 1, 0}]; (* Spin around z axis *) rz = RotationTransform[\[Phi] Degree, {0, 0, 1}]; {u, v} = rz@rx@{{1, 0, 0}, {0, 1, 0}}; Show[{ Graphics3D[{ {Opacity[0.4], Sphere[]}, {Opacity[0.5], Polygon[{ {-1, -1, 0}, {1, -1, 0}, {1, 1, 0}, {-1, 1, 0}}]}, {Arrow[{{0, 0, 0}, u}], Arrow[{{0, 0, 0}, v}]} }], ParametricPlot3D[{ Cos[\[Theta]] u + Sin[\[Theta]] v, (* The great circle in question *) {Cos[\[Theta]], Sin[\[Theta]], 0}, (* Normal unit circle *) RotationTransform[\[Theta], {0, 0, 1}] /@ {u, -u} (* The red dashed stuff *) }, {\[Theta], -Pi, Pi}, PlotStyle -> {Directive[Blue,Thick], Black, Directive[ Red, Dashed]}] }, Axes -> True, AxesLabel -> {"x", "y", "z"}], {{deg, 15, "Inclination"}, -180, 180}, {\[Phi], 0, 360}] The idea is quite simple: Since any great circle can be parametrized as $$cos(\theta)u + sin(\theta)v$$ where $$u$$ and $$v$$ are two orthonormal vectors one can start with $$u=\{1,0,0\}, v=\{0,1,0\}$$ and use RotationTransform to get out of the xy plane, then use RotationTransform again to spin around the z-axis to get all great circles with desired inclination. Manipulate[ (* Rotation deg\[Degree] out of the xy plane *) rx = RotationTransform[deg Degree, {0, 1, 0}]; (* Spin around z axis *) rz = RotationTransform[\[Phi] Degree, {0, 0, 1}]; {u, v} = rz@rx@{{1, 0, 0}, {0, 1, 0}}; Show[{ Graphics3D[{ {Opacity[0.4], Sphere[]}, {Opacity[0.5], Polygon[{ {-1, -1, 0}, {1, -1, 0}, {1, 1, 0}, {-1, 1, 0}}]}, {Arrow[{{0, 0, 0}, u}], Arrow[{{0, 0, 0}, v}]} }], ParametricPlot3D[{ Cos[\[Theta]] u + Sin[\[Theta]] v, (* The great circle in question *) {Cos[\[Theta]], Sin[\[Theta]], 0}, (* Normal unit circle *) RotationTransform[\[Theta], {0, 0, 1}] /@ {u, -u} (* The red dashed stuff *) }, {\[Theta], -Pi, Pi}, PlotStyle -> {Directive[Blue,Thick], Black, Directive[ Red, Dashed]}] }, Axes -> True, AxesLabel -> {"x", "y", "z"}], {{deg, 15, "Inclination"}, -180, 180}, {\[Phi], 0, 360}] The idea is quite simple: Since any great circle can be parametrized as $$\cos(\theta)u + \sin(\theta)v$$ where $$u$$ and $$v$$ are two orthonormal vectors. One can start with $$u=\{1,0,0\}, v=\{0,1,0\}$$ and use RotationTransform to get out of the xy plane, then use RotationTransform again to spin around the z-axis to get all great circles with desired inclination. Manipulate[ (* Rotation deg\[Degree] out of the xy plane *) rx = RotationTransform[deg Degree, {0, 1, 0}]; (* Spin around z axis *) rz = RotationTransform[\[Phi] Degree, {0, 0, 1}]; {u, v} = rz@rx@{{1, 0, 0}, {0, 1, 0}}; Show[{ Graphics3D[{ {Opacity[0.4], Sphere[]}, {Opacity[0.5], Polygon[{ {-1, -1, 0}, {1, -1, 0}, {1, 1, 0}, {-1, 1, 0}}]}, {Arrow[{{0, 0, 0}, u}], Arrow[{{0, 0, 0}, v}]} }], ParametricPlot3D[{ Cos[\[Theta]] u + Sin[\[Theta]] v, (* The great circle in question *) {Cos[\[Theta]], Sin[\[Theta]], 0}, (* Normal unit circle *) RotationTransform[\[Theta], {0, 0, 1}] /@ {u, -u} (* The red dashed stuff *) }, {\[Theta], -Pi, Pi}, PlotStyle -> {Directive[Blue,Thick], Black, Directive[ Red, Dashed]}] }, Axes -> True, AxesLabel -> {"x", "y", "z"}], {{deg, 15, "Inclination"}, -180, 180}, {\[Phi], 0, 360}] 2 Thick edited Dec 16 '12 at 13:40 ssch 14.5k22 gold badges4343 silver badges8383 bronze badges The idea is quite simple: Since any great circle can be parametrized as $$cos(\theta)u + sin(\theta)v$$ where $$u$$ and $$v$$ are two orthonormal vectors one can start with $$u=\{1,0,0\}, v=\{0,1,0\}$$ and use RotationTransform to get out of the xy plane, then use RotationTransform again to spin around the z-axis to get all great circles with desired inclination. Manipulate[ (* Rotation deg\[Degree] out of the xy plane *) rx = RotationTransform[deg Degree, {0, 1, 0}]; (* Spin around z axis *) rz = RotationTransform[\[Phi] Degree, {0, 0, 1}]; {u, v} = rz@rx@{{1, 0, 0}, {0, 1, 0}}; Show[{ Graphics3D[{ {Opacity[0.4], Sphere[]}, {Opacity[0.5], Polygon[{ {-1, -1, 0}, {1, -1, 0}, {1, 1, 0}, {-1, 1, 0}}]}, {Arrow[{{0, 0, 0}, u}], Arrow[{{0, 0, 0}, v}]} }], ParametricPlot3D[{ Cos[\[Theta]] u + Sin[\[Theta]] v, (* The great circle in question *) {Cos[\[Theta]], Sin[\[Theta]], 0}, (* Normal unit circle *) RotationTransform[\[Theta], {0, 0, 1}] /@ {u, -u} (* The red dashed stuff *) }, {\[Theta], -Pi, Pi}, PlotStyle -> {BlueDirective[Blue,Thick], Black, Directive[ Red, Dashed]}] }, Axes -> True, AxesLabel -> {"x", "y", "z"}], {{deg, 15, "Inclination"}, -180, 180}, {\[Phi], 0, 360}]  The idea is quite simple: Since any great circle can be parametrized as $$cos(\theta)u + sin(\theta)v$$ where $$u$$ and $$v$$ are two orthonormal vectors one can start with $$u=\{1,0,0\}, v=\{0,1,0\}$$ and use RotationTransform to get out of the xy plane, then use RotationTransform again to spin around the z-axis to get all great circles with desired inclination. Manipulate[ (* Rotation deg\[Degree] out of the xy plane *) rx = RotationTransform[deg Degree, {0, 1, 0}]; (* Spin around z axis *) rz = RotationTransform[\[Phi] Degree, {0, 0, 1}]; {u, v} = rz@rx@{{1, 0, 0}, {0, 1, 0}}; Show[{ Graphics3D[{ {Opacity[0.4], Sphere[]}, {Opacity[0.5], Polygon[{ {-1, -1, 0}, {1, -1, 0}, {1, 1, 0}, {-1, 1, 0}}]}, {Arrow[{{0, 0, 0}, u}], Arrow[{{0, 0, 0}, v}]} }], ParametricPlot3D[{ Cos[\[Theta]] u + Sin[\[Theta]] v, (* The great circle in question *) {Cos[\[Theta]], Sin[\[Theta]], 0}, (* Normal unit circle *) RotationTransform[\[Theta], {0, 0, 1}] /@ {u, -u} (* The red dashed stuff *) }, {\[Theta], -Pi, Pi}, PlotStyle -> {Blue, Black, Directive[ Red, Dashed]}] }, Axes -> True, AxesLabel -> {"x", "y", "z"}], {{deg, 15, "Inclination"}, -180, 180}, {\[Phi], 0, 360}] The idea is quite simple: Since any great circle can be parametrized as $$cos(\theta)u + sin(\theta)v$$ where $$u$$ and $$v$$ are two orthonormal vectors one can start with $$u=\{1,0,0\}, v=\{0,1,0\}$$ and use RotationTransform to get out of the xy plane, then use RotationTransform again to spin around the z-axis to get all great circles with desired inclination. Manipulate[ (* Rotation deg\[Degree] out of the xy plane *) rx = RotationTransform[deg Degree, {0, 1, 0}]; (* Spin around z axis *) rz = RotationTransform[\[Phi] Degree, {0, 0, 1}]; {u, v} = rz@rx@{{1, 0, 0}, {0, 1, 0}}; Show[{ Graphics3D[{ {Opacity[0.4], Sphere[]}, {Opacity[0.5], Polygon[{ {-1, -1, 0}, {1, -1, 0}, {1, 1, 0}, {-1, 1, 0}}]}, {Arrow[{{0, 0, 0}, u}], Arrow[{{0, 0, 0}, v}]} }], ParametricPlot3D[{ Cos[\[Theta]] u + Sin[\[Theta]] v, (* The great circle in question *) {Cos[\[Theta]], Sin[\[Theta]], 0}, (* Normal unit circle *) RotationTransform[\[Theta], {0, 0, 1}] /@ {u, -u} (* The red dashed stuff *) }, {\[Theta], -Pi, Pi}, PlotStyle -> {Directive[Blue,Thick], Black, Directive[ Red, Dashed]}] }, Axes -> True, AxesLabel -> {"x", "y", "z"}], {{deg, 15, "Inclination"}, -180, 180}, {\[Phi], 0, 360}] 1 answered Dec 16 '12 at 13:19 ssch 14.5k22 gold badges4343 silver badges8383 bronze badges