Skip to content

Commit cd6c2e3

Browse files
committed
8-1
1 parent 701c74a commit cd6c2e3

1 file changed

Lines changed: 24 additions & 8 deletions

File tree

‎08 - Fun with HTML5 Canvas/index-XIAOBENLIKE.html‎

Lines changed: 24 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -42,20 +42,29 @@
4242
}
4343
const _self = Item;
4444
const point = _self.getPosition(event);
45+
console.log(point);
4546

4647
_self.setStroke(_self.calcHue());
4748
_self.setLineWidth(_self.calcLineWidth());
48-
if(event.type == "mousedown" || event.type == "touchstart"){
49-
canvas.beginPath();
50-
canvas.moveTo(point[0], point[1]);
51-
}
52-
canvas.lineTo(point[0], point[1]);
49+
50+
// _self.snow(point);
51+
_self.line(point);
52+
5353
canvas.stroke();
5454
},
55+
// 雪花
56+
snow: (point) => {
57+
canvas.lineTo(point[0], point[1]);
58+
canvas.moveTo(point[0], point[1]);
59+
},
60+
// 平滑的线
61+
line: (point) => {
62+
canvas.lineTo(point[0], point[1]);
63+
},
5564
// 获得当前移动的位置
5665
getPosition: (event) => {
5766
const point = [];
58-
if(event.type == "mousemove"){
67+
if(event.type == "mousemove" || event.type == "mousedown"){
5968
// x
6069
point[0] = event.offsetX;
6170
// y
@@ -96,8 +105,14 @@
96105
},
97106
// 改变可绘画的状态
98107
changeEditable: (editable) => {
99-
console.log(editable);
100108
_setting.editable = editable;
109+
},
110+
start: (event) => {
111+
const _self = Item;
112+
const point = _self.getPosition(event);
113+
canvas.beginPath();
114+
canvas.moveTo(point[0], point[1]);
115+
_self.changeEditable(true);
101116
}
102117
}
103118
})();
@@ -110,13 +125,14 @@
110125
},
111126
// 改变可绘画的状态
112127
changeEditable: Item.changeEditable,
128+
start: Item.start
113129
};
114130
})();
115131
const canvasEle = document.getElementById("js-canvas");
116132
RainbowDraw.init(canvasEle);
117133

118134
// 鼠标
119-
canvasEle.addEventListener("mousedown", () => RainbowDraw.changeEditable(true));
135+
canvasEle.addEventListener("mousedown", RainbowDraw.start);
120136
canvasEle.addEventListener("mousemove", RainbowDraw.draw);
121137
canvasEle.addEventListener("mouseup", () => RainbowDraw.changeEditable(false));
122138
canvasEle.addEventListener("mouseout", () => RainbowDraw.changeEditable(false));

0 commit comments

Comments
 (0)