[390c2f]: / Cobiveco / functions / mmgWriteMesh.m

Download this file

32 lines (25 with data), 876 Bytes

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
function mmgWriteMesh(mesh, filename)
fid = fopen(filename, 'w');
if ~fid
error('Could not open %s for writing.', filename);
end
fprintf(fid, '%s\n', '# MESH #');
fprintf(fid, '%s\n\n', 'MeshVersionFormatted 2');
fprintf(fid, '%s\n\n', 'Dimension 3');
fprintf(fid, 'Vertices\n');
fprintf(fid, '%d\n', size(mesh.points,1));
if ~isfield(mesh, 'pointData') || ~isfield(mesh.pointData, 'class')
mesh.pointData.class = zeros(size(mesh.points,1),1);
end
fprintf(fid, '%f %f %f %d\n', [mesh.points mesh.pointData.class]');
fprintf(fid, '\n');
fprintf(fid, 'Tetrahedra\n');
fprintf(fid, '%d\n', size(mesh.cells,1));
if ~isfield(mesh, 'cellData') || ~isfield(mesh.cellData, 'class')
mesh.cellData.class = zeros(size(mesh.cells,1),1);
end
fprintf(fid, '%d %d %d %d\n\n', [mesh.cells mesh.cellData.class]');
fprintf(fid, '\n');
fprintf(fid, 'End \n');
fclose(fid);
end