[..] La fonction [scl] etwalescl
✨
Code
int etwale_xpl(){
scltracefa(§, ƒ, ∅);
scltracefc("scl-%s (%s) : %s\n", sclver(), sclsec(), temps_char(0));
int en=17, ei;
double *f=newtablin(en+1, 0, 1), *cf=&f[1]; //]0..1]
double c=1, d;
int xn = 1001;
double **x=newmat<double>(en, xn+1), **y=newmat<double>(en, xn+1);
int *mn = newtab<int>(en, xn);
for(ei=0;ei<en;ei++){
d = c*(1 + cf[ei]*√(2)/(2+√(2)));
etwale(d, cf[ei], &mn[ei], x[ei], y[ei]); // ✨
// On ferme l'etwale
x[ei][mn[ei]]=x[ei][0]; y[ei][mn[ei]]=y[ei][0];
mn[ei]++;
}
std::string imgname=std::string(ƒ)+".svg",
imgpath="./srt/"+imgname;
std::string legend = "f=" + num_str<double>(round(cf[0]*103)/10) + "[%]";
for(ei=1;ei<en;ei++){
legend += ";f=" + num_str<double>(round(cf[ei]*103)/10) + "[%]";
}
graf_dis(imgpath.c_str(), 0, ∅, ∅,
"curvex", en, mn, x, y,
"subtitlex", imgname.c_str(), "axis", "equal",
"grid", "on", "legend", legend.c_str(),
"legcorn", "urp", "linespeca", "-a", ∅);
// Libr. mémoire
delete[] f; f=∅;
deletemat(en, &x); deletemat(en, &y);
delete[] mn; mn=∅;
scltracefe(§, ƒ, ∅);
return 0;
}
/* ƒ décorée par le 01-04-2024 17:12:01 */
Sortie
[>..\xpl\src\sclgraf.xpl.cpp.etwale_xpl]
scl-24.04 (gwin64) : 01-04-2024 17:12:01
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
<< END OF DISLIN / VERSION 11.3.2 <<
<< Date : 01.04.2024 Time : 17:12:01 Pageformat: DA4L <<
<< Vectors : 13055 Warnings: 0 Fileformat: SVG <<
<< Metafile: ./srt/etwale_xpl.svg <<
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
[<..\xpl\src\sclgraf.xpl.cpp.etwale_xpl]