MathGroup Archive 2000

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

Search the Archive

Re: Re: Re: 3D graphics

  • To: mathgroup at smc.vnet.net
  • Subject: [mg22825] Re: [mg22799] Re: [mg22720] Re: 3D graphics
  • From: Jens-Peer Kuska <kuska at informatik.uni-leipzig.de>
  • Date: Fri, 31 Mar 2000 01:01:26 -0500 (EST)
  • Organization: Universitaet Leipzig
  • References: <8bhvn1$noc@smc.vnet.net> <200003260758.CAA27554@smc.vnet.net> <38E1CC5C.FFD29CA0@gsmail05.darmstadt.dsh.de>
  • Sender: owner-wri-mathgroup at wolfram.com

Hi,

it is a bit to slow what you are doing. I have tryed it only on my
Octane
R12000 MIPS an 297 MHz.
The next version of the OpenGLViewer can do a
(MV)ContourPlot3D[] with out the help of Mathematica. Here is the timing

> As function for test I had used
> 
> f[x_, y_, z_] := If[x^2 +  2 y^2 +  3 z^2 - 1 <= 0, 1., 0.]
> 
> (following the wisdom as to use un-symmetric test cases) but with
> Contours -> 1 (does work!), 0.5, and 0.1 (0 doesn't work) I had got
> (it's
> interesting to see their differences) ugly, tank-shaped objects
> contrasting
> the beauty of
> 
> ContourPlot3D[x^2 +  2 y^2 +  3 z^2 - 1, {x, -1, 1}, {y, -1, 1}, {z, -1,
> 1},
>     PlotPoints -> 5] // Timing
> 
> {36.943*Second, Graphics3D[]}

In[26]:=
Timing[MVContourPlot3D[
    x^2 + 2 y^2 + 3 z^2 - 1, {x, -1, 1}, {y, -1, 1}, {z, -1, 1}, 
    PlotPoints -> 5, MVReturnValue -> MVInformation, 
    MVPolygonShading -> MVFlat, MVNewScene -> True]]

Out[26]=
{0.06 Second, {MVVolume[3], {-0.76, 5.}, 
    133840, {{PolygonNumber -> {66, 66}, SearchTime -> 0., 
        ReductionTime -> 0., RelaxationTime -> 0.}}}}

Unfortunatly the calculation is so fast that I can't measure the
isosurface extraction. But Mathematica need 0.06 Seconds for the 
function values.

> 
> and as observed by
> 
> > "Bojan Bistrovic" <bojanb at python.physics.odu.edu> wrote in message
> > news:8bhvn1$noc at smc.vnet.net...
> > >
> > > One that looks good is
> > >
> > > In[14]:= ContourPlot3D[fun[x, y, z],
> > >   {x, -1.1, 1.1}, {y, -1.1, 1.1}, {z, -1.1, 1.1}, Contours -> {0.5},
> > >     PlotPoints->{7,9}]//Timing
> > >
> > > Out[13]= {278.31 Second, , - Graphics3D - }
> > >
In[27]:=
Timing[MVContourPlot3D[
    x^2 + 2 y^2 + 3 z^2 - 1, {x, -1, 1}, {y, -1, 1}, {z, -1, 1}, 
    PlotPoints -> 7*9, MVReturnValue -> MVInformation, 
    MVPolygonShading -> MVFlat, MVReducePolygons -> 0.01, MVNewScene ->
True]]

Out[27]=
{18.39 Second, {MVVolume[4], {-0.998488, 5.}, 
    4850064, {{PolygonNumber -> {21036, 680}, SearchTime -> 0.32, 
        ReductionTime -> 2.42, RelaxationTime -> 0.01}}}}

That means Mathematica need 19 seconds to calculate the function values
and the OpenGLViewer need 0.32 seconds to calculate the polygons,
2.42 seconds to reduce the 21000 polygons to a moderate amount of
680 polygons. That gives a total of 23 seconds.

Since MathGL3d is ten times faster than Mathematica alone you don't need
so much MHz on your machine.

If someone need a very stable beta version of 3.0 for MS-Windows,
SGI or Linux, he can send me a mail. Otherwise the beta-version with
an updated manual will be finished in one or two weeks.

The contour level and allmost all options for the f[x,y,z]==c[i]
surfaces can be changed interactive or via Mathematica commands. 

Regards
  Jens


  • Prev by Date: Re: N-Dimensional line
  • Next by Date: Re: Exporting formulae as GIFs
  • Previous by thread: Re: Re: 3D graphics
  • Next by thread: Re: Re: Re: 3D graphics