/*
软件作者: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);
}
}
AutoJs源码-龙形线(1)
需积分: 1 100 浏览量
2022-11-16
22:20:54
上传
评论
收藏 1KB 7Z 举报
[虚幻私塾】
- 粉丝: 335
- 资源: 1559
最新资源
- 基于STC15F104E系列单片机的EEPROM应用程序测试例程KEIL工程源码.zip
- 基于STC15F104E系列单片机的串口通讯应用程序测试例程KEIL工程源码.zip
- java-leetcode题解之第844题比较含退格的字符串.zip
- java-leetcode题解之第824题山羊拉丁文.zip
- java-leetcode题解之第819题最常见的单词.zip
- 基于STC15F104E系列单片机产生PWM信号测试例程KEIL工程源码.zip
- STC15F104E系列单片机-串口、外部中断、掉电存储、定时器同时应用程序KEIL工程源码.zip
- java-leetcode题解之第686题重复叠加字符串匹配.zip
- java-leetcode题解之第680题验证回文串II.zip
- java-leetcode题解之第557题反转字符串中的单词III.zip
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈