MathGroup Archive 1999

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

Search the Archive

Re: Smarter 3D listplot clipping

  • To: mathgroup at
  • Subject: [mg15978] Re: Smarter 3D listplot clipping
  • From: Dan Truong <dtruong at>
  • Date: Fri, 19 Feb 1999 03:27:01 -0500
  • Organization: Irisa, Rennes (FR)
  • References: <7ag4ib$> <>
  • Sender: owner-wri-mathgroup at

ListSurfacePlot3D is almost a nice idea, except it doesn't
work as is for my goal (I explain below how to call
ListSurfacePlot3D for those who don't know the function):

ListSurfacePlot3D[{{ {1,1,1},{2,1,1},{3,1,2},{4,1,2}},

is OK, but

ListSurfacePlot3D[{{ {3,1,2},{4,1,2}},
is not!

The difference between the 2 plots is that I removed
the points where z == 1 (our goal here).
This generates a matrix transposition error :(
when running.
We can cancel this error by leaving the unwanted
{} empty instead of removing them.

Therefore, we must move the points to make invisible
polygons (ie align the 4 points). My solution is to
do it systematically, by shifting the unwanted points
by x+1, y+1, zvalue in [[x+1,y+1]].

This is OK to hide z==1:

		{ {3,3,2},{3,2,2},{3,1,2},{4,1,2}},

(* algorithm is something like
If[ Z == 1, ReplacePart[tab[[i,j]],tab[[i+1,j+1]], i+1, j+1 ]

or if I find a way to apply /; on arrays something similar to:

Bar = foo /; (foo[[i,j,3]] != 1)
Bar = foo[[i+1,j+1]] /; (foo[[i,j,3]] == 1)

I am missing the () ? : operator of C
A = (b>c) ? b : c;     // ie a is lowest between b and c

How ListSurfacePlot3D[] works:
ListSurfacePlot3D[] needs a list made of rows of 
{x,y,z} points. 

	 / /

would be done with a list like: {{C,D},{A,B}}
where C=={1,1,1} etc.
Therefore plotting the square with z=1 for all points,
ie plotting {{1,1},{1,1}} would go like:

ListPlot3D[{{1,1},{1,1}]; (*X,Y coodinates are implicit therefore
unalterable, note that point C == 1 only, X,Y unspecified *)

  • Prev by Date: Re: PlotVectorField Package (easy question?)
  • Next by Date: Re: Notebook -> Kernel
  • Previous by thread: Re: Smarter 3D listplot clipping
  • Next by thread: Figure legend & Overlapping text pb