[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: basic implementation for isosurface, isocolors, isonormals
From: |
Thomas Treichl |
Subject: |
Re: basic implementation for isosurface, isocolors, isonormals |
Date: |
Sat, 11 Apr 2009 22:50:05 +0200 |
User-agent: |
Thunderbird 2.0.0.21 (Macintosh/20090302) |
David Bateman schrieb:
Ok, well it was a little bit harder than I thought for a few reasons
1) gnuplot's depth order pm3d code only works for a single surface and
so a set of patches that need to be depth sorted need to be plotted with
a single splot command
2) The gnuplot binary file format doesn't support "index" for splot and
so constraint 1) means the data has to be written as ASCII
3) As pm3d uses the color palette, any fixed color patches need to have
their color added to the colormap, and then the other things plotted
with the colormap need to be treated carefully..
In any case I committed the attached patch that appears to work fine
for all the tests I ran with the gnuplot CVS version. One issue I have
is with gnuplot 4.2.4 I see the attached for the command
"demo('patch',6); colorbar" for the X11 terminal. This appears to be a
gnuplot bug as it works for other terminals like png, eps, etc and it
works for the CVS version of gnuplot.. Should I care about this bug?
Hi David,
thanks for this work. However, I've some smaller problems running the new
__patch__.m command. The function "field" you're using in lines 37, 39, 42 and
further is undefined to me. Is this another function file you are using but
maybe forgot to check in?
Next, if I try to run any of the demos from the help texts of isosurface or
isocolors then none does work anymore because of an error that looks like this,
for example
octave:22> N = 15; ## Increase number of vertices in each direction
octave:23> iso = .4; ## Change isovalue to .1 to display a sphere
octave:24> lin = linspace (0, 2, N);
octave:25> [x, y, z] = meshgrid (lin, lin, lin);
octave:26> c = abs ((x-.5).^2 + (y-.5).^2 + (z-.5).^2);
octave:27> figure (); ## Open another figure window
octave:28>
octave:28> subplot (2, 2, 1); view (-38, 20);
octave:29> [f, v] = isosurface (x, y, z, c, iso);
octave:30> p = patch ("Faces", f, "Vertices", v, "EdgeColor", "none");
error: A(I): Index exceeds matrix dimension.
error: called from:
error: /Users/Thomas/Development/octave/scripts/plot/__patch__.m at
line 220, column 4
error: /Users/Thomas/Development/octave/scripts/plot/__patch__.m at
line 138, column 12
error: `tmp' undefined near line 59 column 14
error: called from:
error: /Users/Thomas/Development/octave/scripts/plot/patch.m at line 59,
column 12
Any ideas? Thanks,
Thomas
- Re: basic implementation for isosurface, isocolors, isonormals, David Bateman, 2009/04/03
- Re: basic implementation for isosurface, isocolors, isonormals, Thomas Treichl, 2009/04/08
- Re: basic implementation for isosurface, isocolors, isonormals, David Bateman, 2009/04/08
- Re: basic implementation for isosurface, isocolors, isonormals, Thomas Treichl, 2009/04/08
- Re: basic implementation for isosurface, isocolors, isonormals, David Bateman, 2009/04/11
- Re: basic implementation for isosurface, isocolors, isonormals, Daniel J Sebald, 2009/04/11
- Re: basic implementation for isosurface, isocolors, isonormals,
Thomas Treichl <=
- Re: basic implementation for isosurface, isocolors, isonormals, David Bateman, 2009/04/12
- Re: basic implementation for isosurface, isocolors, isonormals, Martin Helm, 2009/04/12
- Re: basic implementation for isosurface, isocolors, isonormals, David Bateman, 2009/04/14
- Re: basic implementation for isosurface, isocolors, isonormals, Thomas Treichl, 2009/04/14
- Re: basic implementation for isosurface, isocolors, isonormals, Martin Helm, 2009/04/14
- Re: basic implementation for isosurface, isocolors, isonormals, David Bateman, 2009/04/14
- Re: basic implementation for isosurface, isocolors, isonormals, Martin Helm, 2009/04/14
- Re: basic implementation for isosurface, isocolors, isonormals, Thomas Treichl, 2009/04/15