Re: Epilog with 3 dimensional graphics primitives
- To: mathgroup at smc.vnet.net
- Subject: [mg83725] Re: Epilog with 3 dimensional graphics primitives
- From: Tom Burton <news at brahea.com>
- Date: Thu, 29 Nov 2007 06:22:08 -0500 (EST)
You can use Show to combine 3D graphics, perhaps something like this:
With[{f=Function[{u,v},{(5+2 Cos[u]) Cos[v],(5+2 Cos[u]) Sin[v],2 Sin
[u]}]},
Show[
ParametricPlot3D[f[u,v],{u,0,2Pi},{v,0,2\[Pi]},PlotStyle->
{Blue,Specularity[White,10],Opacity[.3]},Mesh->None,Axes->False,Boxed-
>False],
ParametricPlot3D[f[u,v],{u,0,2Pi},{v,0,2Pi-1},PlotStyle->
{Blue,Specularity[White,10]},Mesh->None],
ParametricPlot3D[f[u,2\[Pi]-1/2],{u,0,2\[Pi]},PlotStyle->
{Red,AbsoluteThickness[2]}]
]
]
I drew a full but partially transparent torus first, to establish the
PlotRange (I'm too lazy to specify it manually), then overlaid a
partial opaque torus. As long as one of two overlapping surfaces is
transparent, the overlap seems to render well. Otherwise, you might
get an ugly conflict. In version 5, one could resolve this conflict
by wrapping 3D graphics in Graphics to convert them to 2D graphics,
which always put the final graphic "on top". So far I have not found
a way to do this in v6.
Tom
When responding, please replace news with my first initial and full
last name, as one word.
Tom Burton
> ... ParametricPlot3D[{(5 + 2 Cos[u]) Cos[v], (5 + 2 Cos[u]) Sin[v],
> 2 Sin[u]}, {u,0,2Pi},{v,0,2Pi}, Epilog->{Line and Circle here}]
>
> There are two problems. The first is that, I tried to put in the
> Epilog above some 3D graphics primitive, e.g. Point[{0,0,0}]. But
> it doesn't work! It seems that only 2D graphics primitives can be
> put inside the Epilog. ...