FITLINE3D Fit a 3D line to a set of points. LINE = fitLine3d(PTS) Example pts = randn(300, 3); pts = transformPoint3d(pts, createScaling3d([6 4 2])); pts = transformPoint3d(pts, createRotationOx(pi/6)); pts = transformPoint3d(pts, createRotationOy(pi/4)); pts = transformPoint3d(pts, createRotationOz(pi/3)); pts = transformPoint3d(pts, createTranslation3d([5 4 3])); elli = equivalentEllipsoid(pts); figure; drawPoint3d(pts); axis equal; hold on; drawEllipsoid(elli, ... 'drawEllipses', true, 'EllipseColor', 'b', 'EllipseWidth', 3); line = fitLine3d(pts); drawLine3d(line, 'color', 'm', 'LineWidth', 4); See also lines3d, equivalentEllipsoid, fitPlane
Package: matgeom