如何在paper.js中为动态创建的圆分配半径值

时间:2014-12-18 08:49:26

标签: javascript graphics paperjs

我想在画中绘制一个圆圈,如果mousedown意味着它需要点,如果拖动鼠标意味着圆圈的半径应相应增加,任何人都可以帮助我

1 个答案:

答案 0 :(得分:1)

您可以计算鼠标下行点与当前鼠标位置之间的距离

然后将该距离用作圆圈的半径

这里有一些代码就是这样:

function onMouseDrag(event) {
    var trackingCircle = new Path.Circle({
        position: event.downPoint, 
        radius: event.downPoint.subtract(event.point).length,
        dashArray: [2, 2],
        strokeColor: 'red'
    })

    trackingCircle.removeOn({
        drag: true,
        down: true,
        up:true
    })
}

function onMouseUp(event) {
    var circle = new Path.Circle({
        position: event.downPoint, 
        radius: event.downPoint.subtract(event.point).length,
        strokeColor: 'black'
    })
}

并且这里是实际的Sketch,(在画布上点击并拖动)。