-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathwritettg.m
59 lines (47 loc) · 1.07 KB
/
writettg.m
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
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
function writettg(vs,ts,bs,filename)
if (size(vs,1) == 3)
assert(size(vs,1) == 3)
assert(size(ts,1) == 4)
assert(size(bs,1) == 1)
dims = 3;
else
assert(size(vs,1) == 2)
assert(size(ts,1) == 3)
assert(size(bs,1) == 1)
dims = 2;
end
vertices = size(vs,2);
elems = size(ts,2);
boundary_nodes = size(bs,2);
fid=fopen(filename,'w');
fprintf(fid, ['d ' num2str(dims) '\n']);
fprintf(fid, ['v ' num2str(vertices) '\n']);
fprintf(fid, ['e ' num2str(elems) '\n']);
fprintf(fid, ['b ' num2str(boundary_nodes) '\n' ]);
for v=vs
x = num2str(v(1));
y = num2str(v(2));
if (dims == 3)
z = num2str(v(3));
fprintf(fid, [x ' ' y ' ' z '\n']);
else
fprintf(fid, [x ' ' y '\n']);
end
end
for t=ts
v1 = num2str(t(1)-1);
v2 = num2str(t(2)-1);
v3 = num2str(t(3)-1);
if (dims == 3)
v4 = num2str(t(4)-1);
fprintf(fid, [v1 ' ' v2 ' ' v3 ' ' v4 '\n']);
else
fprintf(fid, [v1 ' ' v2 ' ' v3 '\n']);
end
end
for b=bs
idx=num2str(b-1);
fprintf(fid,[idx '\n']);
end
fclose(fid);
end