-
Notifications
You must be signed in to change notification settings - Fork 1
/
googlyedit.js
73 lines (65 loc) · 1.86 KB
/
googlyedit.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
function eyeDrawer()
{
this.eyeContainer = undefined;
this.firstEye = true;
this.eyeNum = 0;
this.x_px = undefined;
this.y_px = undefined;
this.r_px = undefined;
function startDraw(mousePos)
{
this.x_px = mousePos.pageX - this.eyeContainer.offsetLeft;
this.y_px = mousePos.pageY - this.eyeContainer.offsetTop;
}
function endDraw(mousePos)
{
if(this.firstEye)
{
var canvasId = "eye_" + this.eyeNum + "_1";
var x = mousePos.pageX - this.eyeContainer.offsetLeft;
var y = mousePos.pageY - this.eyeContainer.offsetTop;
this.r_px = Math.sqrt( Math.pow(x-this.x_px,2) + Math.pow(y-this.y_px,2) );
addEye(canvasId, this.x_px, this.y_px, this.r_px);
this.firstEye = false;
}
else
{
var canvasId = "eye_" + this.eyeNum + "_2";
addEye(canvasId, this.x_px, this.y_px, this.r_px);
this.eyeNum += 1;
this.firstEye = true;
}
}
function addEye(canvasId, x_px, y_px, r_px)
{
var relSize = 2*100*r_px/eyeContainer.clientWidth;
var posX = 100*x_px/eyeContainer.clientWidth;
var posY = 100*y_px/eyeContainer.clientWidth;
new googlyEye(canvasId, posX, posY, relSize);
console.log("\"" + canvasId + "\"," + posX + "," + posY + "," + relSize);
}
function undoEye()
{
if(this.firstEye)
{
this.eyeNum -= 1;
var e = document.getElementById("eye_" + this.eyeNum + "_2");
e.parentNode.removeChild(e);
}
var e = document.getElementById("eye_" + this.eyeNum + "_1");
e.parentNode.removeChild(e);
this.firstEye = true;
}
window.addEventListener("DOMContentLoaded", function(){
this.eyeContainer = document.getElementById("eyesContainer");
}, false);
window.addEventListener("mousedown", function(mousePos){
startDraw(mousePos);
}, false);
window.addEventListener("mouseup", function(mousePos){
endDraw(mousePos);
}, false);
window.addEventListener("keypress", function(){
undoEye();
}, false);
}