Mathematica 9 is now available
Services & Resources / Wolfram Forums
-----
 /
MathGroup Archive
2001
*January
*February
*March
*April
*May
*June
*July
*August
*September
*October
*November
*December
*Archive Index
*Ask about this page
*Print this page
*Give us feedback
*Sign up for the Wolfram Insider

MathGroup Archive 2001

[Date Index] [Thread Index] [Author Index]

Search the Archive

Re: Transparent Layering w/ Solids

  • To: mathgroup at smc.vnet.net
  • Subject: [mg26544] Re: Transparent Layering w/ Solids
  • From: Martin Kraus <Martin.Kraus at informatik.uni-stuttgart.de>
  • Date: Fri, 5 Jan 2001 00:33:58 -0500 (EST)
  • Organization: Institut fuer Informatik, Universitaet Stuttgart
  • References: <92k1b0$636@smc.vnet.net> <92uru4$dt3@smc.vnet.net>
  • Sender: owner-wri-mathgroup at wolfram.com

Jens-Peer Kuska wrote:
> 
> Hi,
> 
> it is not possible with Mathematicas PostScript.
> You can use MathGL3d render the object with MVAlpha option
> and paste the image back to your notebook.
> 
> You can fint the latest version of MathGL3d at
> http://phong.informatik.uni-leipzig.de/~kuska/mathgl3dv3/index.htm
> 
> Regards
>   Jens
> 
> atjurhs at my-deja.com wrote:
> >
> > Does anyone know how to show transparent layering of solid objects, so
> > that I can display two solid objects laying atop each other or
> > intersecting each other at the same time?  I know this is possible with
> > OpenGL and with other systems, but I'd like to do it directly with
> > Mathematica.

Hi there,

Jens-Peer is (of course) right, but for some applications it is
nice to have some kind of "imitated" transparency, which works
with PostScript. Eric Weisstein and Michael Trott showed me how 
to do this with Mathematica. But instead of posting their solution,
here is a simplified variant (which is not as powerful, but still
produces nice results):

<< Graphics`Shapes`

pic = Show[Graphics3D[{Sphere[], TranslateShape[Sphere[], {1, 0, 0}]}]];

Show[Graphics[pic], 
    Graphics[{Dashing[{0.001, 0.01}], Cases[Graphics[pic], _Line,
Infinity]}],
     AspectRatio -> Automatic];

(The main disadvantage of my simplification is that it doubles all 
non-hidden lines. This can be avoided by exploiting the option 
RenderAll->False .)

Of course, this is far from being as powerful as OpenGL-like
transparency
(whatever that might be :-).

Hope this helps and a Happy New Year to everyone!

Martin


  • Prev by Date: Re: Launch Directory
  • Next by Date: Entering german characters
  • Previous by thread: Re: Transparent Layering w/ Solids
  • Next by thread: Re: Transparent Layering w/ Solids