home *** CD-ROM | disk | FTP | other *** search
- Path: sparky!uunet!usc!zaphod.mps.ohio-state.edu!news.acns.nwu.edu!network.ucsd.edu!dog.ee.lbl.gov!overload.lbl.gov!ux6.lbl.gov!wes
- From: wes@ux6.lbl.gov (Wes Bethel)
- Newsgroups: comp.graphics.avs
- Subject: Re: Handling of "missing" or "special values"
- Date: 30 Dec 1992 20:50:06 GMT
- Organization: Lawrence Berkeley Laboratory
- Lines: 48
- Message-ID: <1ht21uINN1ui@overload.lbl.gov>
- References: <1992Dec30.150955.18683@netnews.whoi.edu+
- Reply-To: wes@ux6.lbl.gov (Wes Bethel)
- NNTP-Posting-Host: ux6.lbl.gov
-
- In article <1992Dec30.150955.18683@netnews.whoi.edu+ rsignell@crusty.er.usgs.gov (Richard P. Signell) writes:
- +Is there a way to tell isosurface to ignore missing or special
- +values in a 3D grid? Setting missing values to zero or some
- +other value does *not* have the desired affect.
- +
- +...
- +The simple technique of just manipulating the data field by
- +setting all the values to zero or some other number does not work,
- +since contour or isosurface will try to draw contours or isosurfaces between
- +the "good" data points and the "missing" data points. I believe the
- +modules themselves (isosurface, contour to geom ,etc) would have to
- +recognize "special values" and act apppropriately to handle this problem.
- +
- +I would love to here what other people have to say about this problem....
- +
-
- Ok. you asked, for it. ;-)
-
- The power of the "marching cubes" (tm) (blech) algorithm is that it
- breaks a big problem into a bunch of little problems. The little
- problem is to find where the surface of interest intersect the (possibly
- twisted) hexahedron that you're looking at.
-
- But wait, there's an assumption that there is data at each corner of the
- hexahedron. You're saying that you don't necessarily have data at
- each corner of the hexahedron, so this isn't the right algorithm to
- use. Unfortunately, unless someone else has some code laying around
- that gets around this problem (ie, "non-marching" methods) you're
- stuck with the AVS supplied isosurface.
-
- The absolute best you can do, using marching cubes that is, is to use
- your judgement to provide data values where there are none. I guess
- you've tried some of the crusty interpolation modules which are
- available, only to have land crop up in the middle of the ocean ;-).
-
- One suggestion for a modification to marching cubes that might work is
- to create an adaptive algorithm that will collapse or combine adjacent
- grid cells when these undefined values are detected. This sounds like
- a master's project, so I'll pass for the time being. It definitely
- sounds like something that should come from the user community though,
- as opposed to asking AVS for something suitable (its too specific, not
- general enough, or whatever).
-
- Let us know when you write the module and submit it to the IAC. ;-)
-
- wes
-
-
-