• 大小: 11KB
    文件类型: .m
    金币: 2
    下载: 0 次
    发布日期: 2024-02-04
  • 语言: Matlab
  • 标签: matlab  点云  

资源简介

把点云数据输入matlab,利用此算法,生成三维模型,并输出stl文件

资源截图

代码片段和文件信息

function stlwrite(filename varargin)
%STLWRITE   Write STL file from patch or surface data.
%
%   STLWRITE(FILE FV) writes a stereolithography (STL) file to FILE for a
%   triangulated patch defined by FV (a structure with fields ‘vertices‘
%   and ‘faces‘).
%
%   STLWRITE(FILE FACES VERTICES) takes faces and vertices separately
%   rather than in an FV struct
%
%   STLWRITE(FILE X Y Z) creates an STL file from surface data in X Y
%   and Z. STLWRITE triangulates this gridded data into a triangulated
%   surface using triangulation options specified below. X Y and Z can be
%   two-dimensional arrays with the same size. If X and Y are vectors with
%   length equal to SIZE(Z2) and SIZE(Z1) respectively they are passed
%   through MESHGRID to create gridded data. If X or Y are scalar values
%   they are used to specify the X and Y spacing between grid points.
%
%   STLWRITE(...‘PropertyName‘VALUE‘PropertyName‘VALUE...) writes an
%   STL file using the following property values:
%
%   MODE          - File is written using ‘binary‘ (default) or ‘ascii‘.
%
%   title         - Header text (max 80 chars) written to the STL file.
%
%   TRIANGULATION - When used with gridded data TRIANGULATION is either:
%                       ‘delaunay‘  - (default) Delaunay triangulation of X Y
%                       ‘f‘         - Forward slash division of grid quads
%                       ‘b‘         - Back slash division of quadrilaterals
%                       ‘x‘         - Cross division of quadrilaterals
%                   Note that ‘f‘ ‘b‘ or ‘t‘ triangulations now use an
%                   inbuilt version of FEX entry 28327 “mesh2tri“.
%
%   FACECOLOR     - Single colour (1-by-3) or one-colour-per-face (N-by-3) 
%                   vector of RGB colours for face/vertex input. RGB range
%                   is 5 bits (0:31) stored in VisCAM/SolidView format
%                   (http://en.wikipedia.org/wiki/STL_(file_format)#Color_in_binary_STL)
%
%   Example 1:
%       % Write binary STL from face/vertex data
%       tmpvol = zeros(202020);       % Empty voxel volume
%       tmpvol(8:128:125:15) = 1;     % Turn some voxels on
%       fv = isosurface(tmpvol 0.99);  % Create the patch object
%       stlwrite(‘test.stl‘fv)         % Save to binary .stl
%
%   Example 2:
%       % Write ascii STL from gridded data
%       [XY] = deal(1:40);             % Create grid reference
%       Z = peaks(40);                  % Create grid height
%       stlwrite(‘test.stl‘XYZ‘mode‘‘ascii‘)

%   Original idea adapted from surf2stl by Bill McDonald. Huge speed
%   improvements implemented by Oliver Woodford. Non-Delaunay triangulation
%   of quadrilateral surface courtesy of Kevin Moerman. FaceColor
%   implementation by Grant Lohsen.
%
%   Author: Sven Holcombe 11-24-11


% Check valid filename path
path = fileparts(filename);
if ~isempty(path) && ~exist(path‘dir‘)
    erro

评论

共有 条评论