It's easy if you have the Cardano3 (and DrawGraphics) package.
It has a routine, ColoredRiemannSphere, that draws a colored sphere with two
little arrow cones at the north and south pole and the equator and zero
meridian line marked. The user can do a lot of tailoring of the exact
appearance of the sphere including making the sphere surface invisible but
keeping the poles, equator and meridian.
Needs["Cardano3`ComplexGraphics`"]
Here is a sample set of theta-phi points.
tppts = {{0.754134, -1.06361}, {0.83143, -0.955397},
{0.931914, -0.831724}, {1.04786, -0.677132}, {1.17926, -0.522541},
{1.33385, -0.445245}, {1.52709, -0.391138}, {1.68941, -0.282924},
{1.77444, -0.0896843}, {1.85173, 0.142203}, {1.85946, 0.412738}};
The following statement maps the points to a unit radius sphere.
spherepoints = {Cos[#2]Sin[#1], Sin[#2]Sin[#1], Cos[#1]} & @@@ tppts;
The following statement then plots the sphere and the points and line
connecting the points on the surface. It is necessary to make the sphere a
little smaller to keep the straight line segments from intersecting the
polygons of the sphere. NeutralLighting is a DrawGraphics lighting option
routine that allow the user to adjust the color saturation, brightness,
ambient light and direction of the light sources. Light colored surfaces
display much better with reduced color saturation of the lighting.
Draw3DItems[
{ColoredRiemannSphere[{Carrot, 0.99, {}, {41, 51}}, {}, {}],
Black,
Line[spherepoints],
AbsolutePointSize[5], Point /@ spherepoints},
NeutralLighting[0.3, 0.5, 0.1],
Boxed -> False,
ViewPoint -> {2.935, -1.416, 0.910},
PlotRegion -> {{-0.2, 1.3}, {-0.2, 1}},
Background -> Blue,
ImageSize -> 500];
I'll send a gif image of the plot to Matija separately. If anyone else would
want one please contact me.
David Park
djmp at earthlink.net
http://home.earthlink.net/~djmp/
From: Matija Herceg [mailto:mPREZIME at geof.hr]
To: mathgroup at smc.vnet.net
Hi,
My professor ask me if I could make program which would draw celestial
sphere with (celestial) measurements on it to show celestial coordinates
of some (celestial) body.
My idea was that I could draw sphere in mathematica, and with celestial
coordinates given by user input the program would draw celestial curves
(declination, ascension...).
Can I draw curves on sphere in Mathematica?
Is this possible in new version of Mathematica (5.1 and higher)?
Because GeometricalGeodesy (a new Mathematica application package) is
now available, and I don't know if some of this problems can be solved
without this new package.
Thanks,
Matija