📄 frac_tree1.c
字号:
#include "matrix.h"
void mexFunction(int nlhs, mxArray *plhs[], int nrhs,
const mxArray *prhs[])
{
double *xp, *yp, *vp, *x0p, *y0p, *v0p, x0, y0;
double vv;
long i, N;
x0p=mxGetPr(prhs[0]); y0p=mxGetPr(prhs[1]);
v0p=mxGetPr(prhs[2]); N=mxGetM(prhs[2]);
plhs[0]=mxCreateDoubleMatrix(N,1, mxREAL);
plhs[1]=mxCreateDoubleMatrix(N,1, mxREAL);
xp=mxGetPr(plhs[0]); yp=mxGetPr(plhs[1]);
xp[0]=x0p[0]; yp[0]=y0p[0];
for (i=1; i<N; i++){
vv=v0p[i];
if (vv<0.05)
{yp[i]=0.5*yp[i-1]; xp[i]=0;}
else if (vv<0.45) {
xp[i]=0.42*(xp[i-1]-yp[i-1]); yp[i]=0.2+0.42*(xp[i-1]+yp[i-1]);
}
else if (vv<0.85) {
xp[i]=0.42*(xp[i-1]+yp[i-1]); yp[i]=0.2-0.42*(xp[i-1]-yp[i-1]);
}
else {xp[i]=0.1*xp[i-1]; yp[i]=0.1*yp[i-1]+0.2;}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -