Isosurface evaluation without introducing any smoothing

2 views (last 30 days)
Hi to everybody,
I've noticed with some simple tutorial example that the isosurface function introduces some kind of smoothing in my matrix before starting the calculation of the isosurface. For my purposes this is very problematic, I rather prefer to see a surface divided in several disconnected pieces than a compact and smooth one. Is there one different algorithm that evaluates isosurfaces without introducing any kind of smoothing? Do anyone knows how may i solve my problem?
Thanks in advance to anyone answering,
Fabio

Answers (2)

Sean de Wolski
Sean de Wolski on 16 Jul 2012
An isosurface has to interpolate by nature in order to calculate triangles.
What are you trying to do? You might be able to call patch directly if you are just looking for a visualization.

Fabio
Fabio on 16 Jul 2012
I've created a 3D scalar field and I would like to identify connected areas of space that have a value higher than a certain threshold...
I could simply select all the cells that fulfill the requirement directly from my original matrix using a very simple command(matrix>threshold), but I liked the idea of extending a little bit more the selection by introducing some kind of 'approximation', that is, in my case, the added volume given by the presence of triangles connecting the cells with the same isovalue compared to the simple 'sum' of cells. My problem is that the smoothing introduced with the regular 'isosurface' function makes this approximation a little bit too strong and I’ve experienced the merging of two (or more) areas of my space that, with a proper isovalue, should be separated.
I hope I made myself clear... but I've to admit that I'm not quite sure.. ask for more specification if needed.
Thanks again for the support.
  2 Comments
Sean de Wolski
Sean de Wolski on 16 Jul 2012
Then perhaps the simplest method would be to come up with a better "isovalue" development algorithm. I.e. rather than fighting with isosurface work on making the values of your 3d matrix more distinct so that the isovalue threshold has more meaning...
Fabio
Fabio on 17 Jul 2012
Probably you're right... btw i found this DelaunayTri function that maybe can help me...i'll try to use it. Thanks for your help!

Sign in to comment.

Tags

Products

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!