New line when writing to a text file using fprintf?

1 次查看(过去 30 天)
I would like to print to a .scad file to create a drawing on openscad.
I want to iterate the drawing through 1-8281. However, I want there to be 8282 seperate lines of code. For each seperate segment of drawing. For example, I want the code to print out:
1stline: $fn = 30
2ndline: {translate([1st,1st,0]);cylinder(1st,1st,1st);}
3rdline: {translate([2nd,2nd,0]);cylinder(2nd,2nd,2nd);}
4thline: {translate([3rd,3rd,0]);cylinder(3rd,3rd,3rd);}
8282ndline: {translate([8281st,8281st,0]);cylinder(8281st,8281st,8281st);}
i have attached my code here:
xm,ym,l2 and r2 are all 1x8281 arrays which i wish for their ith value to be printed out.
fo = fopen('random_lens.scad','wt')
fprintf(fo,'$fn = 30;');
for i=1:8281
fprintf(fo,'{translate([%d,%d,0]);cylinder(%d,%d,%d);}',xm(i),ym(i),l2(i),r2(i),r2(i));
end
fclose(fo);

采纳的回答

Star Strider
Star Strider 2022-7-13
The newline character for fprintf and its friends is '\n', so perhaps:
fprintf(fo,'{translate([%d,%d,0]);cylinder(%d,%d,%d);}\n',xm(i),ym(i),l2(i),r2(i),r2(i));
.

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Cell Arrays 的更多信息

产品


版本

R2019a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by