Migrated brush.

This commit is contained in:
Devine Lu Linvega 2016-11-14 13:51:16 -08:00
parent 5c875e2801
commit 0b3842f022
7 changed files with 18 additions and 85 deletions

View File

@ -10,12 +10,11 @@
<script type="text/javascript" src="scripts/ronin.module.js"></script>
<script type="text/javascript" src="scripts/ronin.canvas.js"></script>
<script type="text/javascript" src="scripts/ronin.overlay.js"></script>
<script type="text/javascript" src="scripts/ronin.brush.js"></script>
<script type="text/javascript" src="scripts/ronin.brush.pointer.js"></script>
<script type="text/javascript" src="scripts/pointer.js"></script>
<script type="text/javascript" src="scripts/brush.js"></script>
<script type="text/javascript" src="scripts/keyboard.js"></script>
<script type="text/javascript" src="scripts/commander.js"></script>
<script type="text/javascript" src="scripts/guide.js"></script>
<script type="text/javascript" src="scripts/ronin.js"></script>
</head>
<body>

View File

@ -1,48 +0,0 @@
function Guide(position = new Position(),rect = new Rect(),color = new Color())
{
this.position = position;
this.rect = rect;
this.color = color;
this.draw = function(context)
{
context.beginPath();
if((this.position.x < 0 || this.position.y < 0) && (this.rect.w > 0 || this.rect.h > 0)){
var new_x = this.position.x < 0 ? canvas.width - Math.abs(this.position.x) - this.rect.w : this.position.x;
var new_y = this.position.y < 0 ? canvas.height - Math.abs(this.position.y) - this.rect.h : this.position.y;
context.moveTo(new_x,new_y);
context.lineTo(new_x + this.rect.w,new_y);
context.lineTo(new_x + this.rect.w,new_y + this.rect.h);
context.lineTo(new_x,new_y + this.rect.h);
context.lineTo(new_x,new_y);
}
else if(this.position.x > 0 && this.position.y > 0 && (this.rect.w > 0 || this.rect.h > 0)){
context.moveTo(this.position.x,this.position.y);
context.lineTo(this.position.x + this.rect.w,this.position.y);
context.lineTo(this.position.x + this.rect.w,this.position.y + this.rect.h);
context.lineTo(this.position.x,this.position.y + this.rect.h);
context.lineTo(this.position.x,this.position.y);
}
else if(this.position.x > 0 && this.position.y > 0){
context.moveTo(this.position.x,this.position.y);
context.lineTo(this.position.x + 10,this.position.y);
context.lineTo(this.position.x,this.position.y + 10);
context.lineTo(this.position.x,this.position.y);
}
else if(this.position.x > 0 && this.position.y === 0){
context.moveTo(this.position.x,0);
context.lineTo(this.position.x,canvas.height);
}
else if(this.position.x === 0 && this.position.y > 0){
context.moveTo(0,this.position.y);
context.lineTo(canvas.width,this.position.y);
}
context.lineCap="round";
context.lineWidth = 1;
context.strokeStyle = this.color.rgba();
context.stroke();
context.closePath();
}
}

View File

@ -3,51 +3,26 @@ var context = canvas.getContext('2d');
var ronin = new Ronin();
ronin.canvas.element = canvas;
ronin.overlay.element = document.getElementById('overlay');
ronin.overlay.context().imageSmoothingEnabled = false;
ronin.element = document.getElementById('ronin');
// var brush = new Brush();
var commander = new Commander(document.getElementById("commander"),document.getElementById("commander_input"));
document.addEventListener('mousemove', function(e) {
// brush.draw(e);
ronin.brush.draw(e);
}, false);
document.addEventListener('mousedown', function(e) {
if(e.which != 1){ return; }
// brush.draw_start(e);
ronin.brush.draw_start(e);
}, false);
document.addEventListener('mouseup', function(e) {
// brush.draw_stop(e);
ronin.brush.draw_stop(e);
}, false);
var keyboard = new Keyboard();
document.onkeyup = function myFunction(){ keyboard.listen(event); };
/* brush experiments
var mirror_test = new Pointer();
mirror_test.mirror = new Position(200,10);
brush.add_pointer(mirror_test);
var mirror_test2 = new Pointer(new Position(0,10));
mirror_test2.mirror = new Position(200,0);
brush.add_pointer(mirror_test2);
brush.add_pointer(new Pointer(new Position(0,10)));
*/
document.onkeyup = function myFunction(){ keyboard.listen(event); };

View File

@ -36,7 +36,7 @@ function Pointer(offset = new Position(), color = new Color('000000'))
else if(this.mirror && this.mirror.y > 0){
return new Position((brush.position.x + this.offset.x), this.mirror.y - (brush.position.y + this.offset.y));
}
return new Position(brush.position.x + this.offset.x, brush.position.y + this.offset.y);
return new Position(ronin.brush.position.x + this.offset.x, ronin.brush.position.y + this.offset.y);
}
this.start = function()

View File

@ -3,6 +3,7 @@ function Ronin()
this.element = null;
this.canvas = new Canvas();
this.overlay = new Overlay();
this.brush = new Brush();
this.load_image = function(p)
{

View File

@ -1,9 +1,15 @@
function Position(position_str)
function Position(position_str = "0,0",y = null)
{
this.position_str = position_str;
this.x = parseFloat(this.position_str.split(",")[0]);
this.y = parseFloat(this.position_str.split(",")[1]);
this.x = y ? position_str : parseFloat(this.position_str.split(",")[0]);
this.y = y ? y : parseFloat(this.position_str.split(",")[1]);
this.update = function(x,y)
{
this.x = x;
this.y = y;
}
this.is_equal = function(target)
{