Re: Light and surface colors
- To: mathgroup at smc.vnet.net
- Subject: [mg58702] Re: [mg58688] Light and surface colors
- From: "Jose Luis Gomez" <jose.luis.gomez at itesm.mx>
- Date: Fri, 15 Jul 2005 03:02:17 -0400 (EDT)
- Sender: owner-wri-mathgroup at wolfram.com
Daniele, with the following commands you will see a red sphere with shadows from the lighting: <<Graphics`; mySphere=ContourPlot3D[x^2+y^2+z^2-1,{x,-1,1},{y,-1,1},{z,-1,1}, DisplayFunction-> Identity]; Show[Graphics3D[SurfaceColor[RGBColor[1,0,0]]],mySphere, DisplayFunction-> $DisplayFunction] This is an improvement: <<Graphics`; mySphere=ContourPlot3D[x^2+y^2+z^2-1,{x,-1,1},{y,-1,1},{z,-1,1}, PlotPoints->{7,5},DisplayFunction-> Identity]; Show[Graphics3D[EdgeForm[]], Graphics3D[SurfaceColor[RGBColor[1,0,0]]],mySphere, DisplayFunction->$DisplayFunction] Bye! Jose Luis http://homepage.cem.itesm.mx/lgomez/ -----Mensaje original----- De: Daniele Lupo [mailto:danwolf_no_spam_please_ at libero.it] Enviado el: Jueves, 14 de Julio de 2005 01:49 a.m. Para: mathgroup at smc.vnet.net Asunto: [mg58688] Light and surface colors Hi to everyone. I've just obtained a Student License of Mathematica, and I'm working in graphics... I've created, after a half-day of work, an image representing an ellipsoid, with a colored surface When I try to represent it, I must put Ligthing->False to see surface colors. I'd like to know if there's a way to obtain a rendered image, in which I can have both light and surface color, to give a shadow to the figure and create a more 3D effect. Thanks for replies. Below there's the code... Daniele -------------------------- << Graphics`ContourPlot3D`; a = 7; b = 5; c = 4; r = 1; ellipsoid = ContourPlot3D[ (x/a)^2 + (y/b)^2 + (z/c)^2 - r, { x, -10, 10}, {y, -10, 10}, {z, -10, 10}, PlotPoints -> 12, AspectRatio -> Automatic ]; (*It finds the median point of vertices of a list of a 3D coordinates*) midpoint[l_] := Apply[Plus, Transpose[l], 2]/Length[l]; (*Function to map in the ellipsoid surface*) pressure[x_, y_, z_] := x^2 + y^2 + Sin[4z]; (*Color Function*) color[x_] := Hue[pressure @@ midpoint[x]/50]; (*Rule to change original graphic object*) colorpolygon = Polygon[coord_] :> {color[coord],EdgeForm[{}],Polygon[coord]}; (*creation of new, colored ellipsoid*) coloredellipse = ellipsoid /. colorpolygon; (*Visualization of the shape*) (*I'd like to have also the light...*) Show[coloredellipse, Lighting -> False];