RE: Combining ListPlot3D with Show[]

• To: mathgroup at smc.vnet.net
• Subject: [mg72223] RE: [mg72202] Combining ListPlot3D with Show[]
• From: "David Park" <djmp at earthlink.net>
• Date: Fri, 15 Dec 2006 07:05:54 -0500 (EST)

```Luiz,

First I'm going to show the easy way to do this with the DrawGraphics
package from my web site below. As if often the case is postings, you didn't
give us evaluable code because we don't know what t1 and t2 are. I'm going
to do a case using Plot3D and an example from the Help browser. What
HiddenSurface -> False means is that the surface is actually a wire frame.
With DrawGraphics making your plot is quite straightforward with no
suprises.

Needs["DrawGraphics`DrawingMaster`"]

Draw3DItems[
{Draw3D[Sin[x + Sqrt[2]Sin[y]], {x, -Pi, Pi}, {y, -Pi, Pi}, Mesh ->
False],
Draw3D[2x + Sin[x + Sqrt[2]Sin[y]], {x, -Pi, Pi}, {y, -Pi, Pi}] //
UseWireFrame},
BoxRatios -> {1, 1, 1},
ImageSize -> 400];

It is somewhat difficult to explain what Mathematica is doing with the Show
(and also the DisplayTogether command from Graphics`Graphics`). Mathematica
always combinds the options in order from the different plot statements and
since you had HiddenSurface->True in the first plot statement, that
overrides the HiddenSurface->False in the second statement. But that is not
the actual explanation because if we use Show[g2,g1] we still don't get wire
frames for either surface. So I think that the actual explanation is that
when using Show  Mathematica always converts all 3D graphics objects, like
SurfaceGraphics, to Graphics3D objects. But HiddenSurface is a
SurfaceGraphics option and NOT a Graphics3D option. So it had no effect.

David Park

From: Luiz Melo [mailto:luiz.melo at polymtl.ca]

Dear mathgroup,

Given two tables t1 and t2, we set

g1 = ListPlot3D[t1, Mesh -> False, HiddenSurface -> True, ColorFunction ->
Automatic, DisplayFunction -> Identity];

and

g2 = ListPlot3D[t2, Mesh -> False, HiddenSurface -> False, ColorFunction ->
Automatic, DisplayFunction -> Identity];

Now combine g1 and g2 with Show:

Show[g1,g2, DisplayFunction -> \$DisplayFunction];

Why does the plot g2 is displayed as if its option "HiddenSurface" was
"True" ??

Luiz

--
Luiz Melo
École Polytechnique de Montréal
Département de Génie Physique
C.P.6079, succ. Centre-ville