       Re: Contour ColorFunction in a ParametricPlot

• To: mathgroup at smc.vnet.net
• Subject: [mg120197] Re: Contour ColorFunction in a ParametricPlot
• From: "Blandeau M.N." <mnb1f10 at soton.ac.uk>
• Date: Tue, 12 Jul 2011 07:00:40 -0400 (EDT)
• References: <201107080851.EAA28634@smc.vnet.net>

```Thank you very much Bob and Heike.

For this example Heike's solution with mesh seems more efficient, the plot
is easier to manipulate and  the precision of the contour is better compared to the number of point in the directive "PlotPoints" (I guess this is because the mesh works with lines only whereas Bob's solution works with entire surfaces).

I still have one simple question :
What is the directive to see the value of the MeshFunction or ContourPlot when you pass the mouse above ? Will this directive still work if you use the Function "Show[{ParametricPlot[...],...}]" ?

Thanks again
Mathias

-----Original Message-----
From: Heike Gramberg [mailto:heike.gramberg at gmail.com]
Sent: 09 July 2011 12:31
To: mathgroup at smc.vnet.net
Subject: [mg120197] Re: Contour ColorFunction in a ParametricPlot

On 8 Jul 2011, at 09:51, Bob Hanlon wrote:

>
> contours = 6;
> ParametricPlot3D[
> {Cos[p] Sin[t], Sin[p] Sin[t], Cos[t]}, {p, 0, 2 Pi}, {t, 0, Pi},
> PlotPoints -> 200, Mesh -> None, ColorFunction -> Function[{x, y, z,
> p, t},
>   Hue[Round[Sin[6 p] Sin[6 t], 1/contours]]], ColorFunctionScaling ->
> True]
>
>
> Bob Hanlon
>

Another way to create this effect would be to use MeshFunctions in combination with MeshShading:

With[{meshn = 10},
ParametricPlot3D[{Cos[\[Phi]] Sin[\[Theta]],
Sin[\[Phi]] Sin[\[Theta]], Cos[\[Theta]]}, {\[Phi], 0,
2 \[Pi]}, {\[Theta], 0, \[Pi]}, PlotPoints -> 100,
MeshFunctions -> {Function[{x, y, z, \[Phi], \[Theta]},
Sin[6  Rescale[\[Phi], {0, 2 Pi}]] Sin[
6 Rescale[\[Theta], {0, Pi}]]]},
Mesh -> meshn, MeshShading -> Table[Hue[i], {i, 0, 1, 1/meshn}],
MeshStyle -> None, Lighting -> "Neutral"]]

Heike.

> ---- "Blandeau M.N." <mnb1f10 at soton.ac.uk> wrote:
>
> =============
> Hello,
> I looked for this specific question in the archive and I did not find.
>
> I want to create a contour (ie. not smooth) ColorFunction over a parametricplot.
>
> For example:
> ParametricPlot3D[ {Cos[ \[Phi]] Sin[\[Theta]],  Sin[\[Phi]]
> Sin[\[Theta]], Cos[\[Theta]]}, {\[Phi], 0,
>  2 \[Pi]}, {\[Theta], 0, \[Pi]}, PlotPoints -> 100, Mesh -> None,
> ColorFunction ->  Function[{x, y, z, \[Phi], \[Theta]},
>   Hue[Sin[6 \[Phi]] Sin[6 \[Theta]]]], ColorFunctionScaling -> True]
>
> Here the colorfunction is smooth, what directive should I add to obtain acontour of the colour and to manage the number of contours ?
>
>
> Mathias Blandeau
>
>
> From: Blandeau M.N.
> Sent: 06 July 2011 14:35
> To: 'mathgroup at smc.vnet.net'
> Subject: subscription to mathgroup mailing list
>
> Hi,
> I would like to be added to the mathgroup mailing list, I am using Mathematica for my PhD and I have several questions to ask.