I am writing a code that creates a 3D shape from a set of data points and am running into this problem where the shape does not properly follow the curvature of the data points and rather draws a straight line. This can be seen on the sides of the figure below where the shape isn't properly following the data points into the curves.
My code:
load('seg_info.mat');x = seg_info(:, 1);y = seg_info(:, 2);z = seg_info(:, 3);colors = seg_info(:, 4);scatter3(x,y,z);hold on;DT = delaunayTriangulation(x, y, z);[K, v] = convexHull(DT);trisurf(K, DT.Points(:,1), DT.Points(:,2), DT.Points(:,3), ... 'FaceAlpha', 0.5, 'EdgeColor', 'none', ... 'CData', colors, 'FaceColor', 'interp');
Does anyone know how I can improve my code to better fit these sides? I have tried using alpha shapes and boundary in an attempt to derive the concave hull but neither worked.
Best Answer