Alexander Deplov

Worm cursor

Worm cursor

Files

Code

var bg = new Path.Rectangle({
    size: view.size,
    fillColor: 'black'
})

var points = 5
var length = 200
var path = new Path({
    strokeColor: '#E4141B',
    strokeWidth: 20,
    strokeCap: 'round',
    selected: false,
})
var start = view.center;
for (var i = 0; i < points; i++)
    path.add(start + new Point(i * length, 0))

function onMouseMove(event) {
    self.isVisible = true
    path.firstSegment.point = event.point
    for (var i = 0; i < points - 1; i++) {
        var segment = path.segments[i]
        var nextSegment = segment.next
        var vector = segment.point - nextSegment.point
        vector.length = length
        nextSegment.point = segment.point - vector / 4
        path.strokeColor.hue = 360 / (view.bounds.width / event.point.x) / i * 4
    }
    path.smooth({
        type: 'asymmetric'
    })
    path.simplify([2, 2])
}