How to smooth a surface of 3-d geometry

9 views (last 30 days)
VANDANA GUPTA
VANDANA GUPTA on 9 Aug 2019
Commented: VANDANA GUPTA on 14 Aug 2019
I have three column vectors Xm, Ym and Zm. I plotted these vectors as below code:
k = boundary(Xm,Ym,Zm,1);
trisurf(k, Xm,Ym,Zm,'edgecolor','none','facecolor','m', 'facealpha',0.5)
I got a object by above code. I want to smooth the surface of this 3-d object
  3 Comments
VANDANA GUPTA
VANDANA GUPTA on 14 Aug 2019
sir this is the output figure of vectors Xm, Ym and Zm using boundary function

Sign in to comment.

Answers (1)

KSSV
KSSV on 14 Aug 2019
Are you looking for something like this?
dt = delaunayTriangulation(Xm,Ym) ;
t = dt.ConnectivityList ;
x = dt.Points(:,1) ;
y = dt.Points(:,2) ;
F = scatteredInterpolant(Xm,Ym,Zm) ;
z = F(x,y) ;
trisurf(t,x,y,z,'EdgeColor','k')
  2 Comments
VANDANA GUPTA
VANDANA GUPTA on 14 Aug 2019
sir, i want to smooth the straight edges and angular corners i.e. roughness of geometry which is getting from Xm, Ym and Zm..
VANDANA GUPTA
VANDANA GUPTA on 14 Aug 2019
i searched about smoothness..In matlab, 'smooth', 'smooth3', 'sgolayfilt' and 'smoothdata' functions are used for smoothing the figure.. I cant observe that the which function will be giving the best and how much smoothness in result..

Sign in to comment.

Community Treasure Hunt

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

Start Hunting!