画线连接

时间:2015-09-18 01:36:11

标签: jquery

我有sample,我想要的是得到这个结果enter image description here

注意:

a。)1和2将连接,而3将在第三个mousedown点击中生成。

b。)1,2,3应该连续宣布。

c。)1和2可以延伸宽度

d。)3应该延伸到高度。

e。)1,2,3应该作为一个整体拖动(全部在一起)。

f。)声明的模式是1到2(水平)和2到3(垂直)。

function handleMouseDown(e){
// tell the browser we're handling this event
e.preventDefault();
e.stopPropagation();

startX=parseInt(e.clientX-offsetX);
startY=parseInt(e.clientY-offsetY);

draggingIndex=-1;
for(var i=0;i<anchors.length;i++){
    var a=anchors[i];
    var dx=startX-a.x;
    var dy=startY-a.y;
    if(dx*dx+dy*dy<radius*radius){
        draggingIndex=i;
        break;
    }
}

//Detect if we're on a line:
fullDrag = mouseOnLine({x:startX, y: startY});

// If a drag hasn't started, add another anchor here
if(draggingIndex==-1 && fullDrag == null){
    addAnchor(startX,startY);
    var al = anchors.length-1;
    var almod4 = al%2;
    if(almod4==1){
        connectors.push({start:al-1,end:al});
    }
    if(almod4==2){
        connectors.push({start:al-2,end:al});
        connectors.push({start:al-1,end:al});
    }
    draw();
}
}

1 个答案:

答案 0 :(得分:0)

你的:if(almod4 == 2){

应该是:if(almod4 == 0){