/*
软件作者:https://xuhss.com/oxox/pro
*/
"ui";
ui.layout(
<vertical>
<canvas id="board" layout_weight="1"/>
</vertical>
);
//尺寸
const size = 256;
var i = 0
var o = [0, 0, 0]
var paint = new Paint();
ui.board.on("draw", function(canvas) {
//绘制背景色
//canvas.drawColor(colors.BLACK);
//绘制分数
paint.setColor(colors.BLACK);
paint.setTextSize(50);
//canvas.drawText(degree.x);
//toast(JSON.stringify(degree,null,4))
paint.setStrokeWidth(5);
var offset = {
x: 350,
y: 1000
};
//偏移坐标
canvas.translate(offset.x, offset.y);
//绘制围墙
//toast(JSON.stringify(cube.p1,null,4))
paint.setColor(colors.RED);
paint.setStrokeWidth(3)
i += 0.3
n = (Math.sin(i) / 2 + 0.5) * 10
koch(canvas, paint, 0, -500, 0, 500, n);
});
function zero(num) {
if (num < 0) {
return -1
} else {
return 1
}
}
//连线
function line(canvas, paint, x1, y1, x2, y2) {
canvas.drawLine(x1, y1, x2, y2, paint);
}
//三轴矩阵旋转
function koch(canvas, paint, x0, y0, x1, y1, k) {
var x2, y2
x2 = (x0-x1)/2-(y0-y1)/2+x1 /*由上面的运算可以得到其余三点 坐标的计算式*/
y2 = (x0-x1)/2+(y0-y1)/2+y1
if (k > 1) /*如果迭代次数大于1,就继续迭代下去,即执行以下程序*/ {
koch(canvas, paint, x0, y0, x2, y2, k - 1);
/*对以(x0, y0)和(x2, y2)为端点的线段作为初始线段进行迭代运算,以下类同*/
koch(canvas, paint, x1, y1, x2, y2, k - 1);
} else { /*如果迭代次数等于1,停止迭代,画出迭代生成的图形*/
line(canvas, paint, x0, y0, x2, y2);
/*对以(x0, y0)和(x2, y2)为端点的线段作为初始线段进行迭代运算,以下类同*/
line(canvas, paint, x1, y1, x2, y2);
}
}

[虚幻私塾】
- 粉丝: 348
最新资源
- 微信小程序转支付宝小程序命令行工具.zip
- 监理投标第二章.doc
- c&c++课程设计-学生成绩管理系统.7z
- 微信小程序--小商城.zip
- 网架工程监理细则.doc
- 微信小程序-2048小游戏.zip
- 猫眼电影_Taro_微信小程序_React.zip
- 主楼130厚现浇板计算书.docx
- 西安某商业项目营销策划方案.doc
- 细胞外Ca2+浓度对坐骨神经——腓肠肌收缩的影响.docx
- 微信小程序:Github今日榜单.zip
- [河北]某工程岩土工程勘察报告.doc
- 微信小程序-从零开始Demo.zip
- 微信小程序,微信小应用,微信开发.zip
- 小区物业管理方案示范文本.doc
- 第十二章动量矩定理.pdf
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈


