Code
var bg = new Path.Rectangle({
size: view.bounds,
fillColor: 'black',
position: view.center
})
var rootGroup = new Group()
var point1 = new Path.Circle([384, 283], 4)
point1.fillColor = 'red'
rootGroup.addChild(point1)
point1.opacity = 0
var point2 = new Path.Circle([416, 76], 3)
point2.fillColor = 'red'
rootGroup.addChild(point2)
point2.opacity = 0
var point3 = new Path.Circle([546, 80], 3)
point3.fillColor = 'green'
rootGroup.addChild(point3)
point3.opacity = 0
var arcWidth = 7
var arc = new Path.Arc(point1.position, point2.position, point3.position)
arc.strokeColor = 'blue'
arc.strokeWidth = arcWidth
arc.strokeCap = 'round'
rootGroup.addChild(arc)
var clones = 128 / 2
var angle = 360 / clones
var group = new Group()
for (var i = 0; i < clones; i++) {
var clone = arc.clone()
clone.rotate(angle * i, [400, 360])
clone.strokeColor.hue = i * angle
}
var cloneGroup = rootGroup.clone()
cloneGroup.scale(-1, 1)
cloneGroup.sendToBack()
function onFrame(event) {
rootGroup.rotate(-0.1)
cloneGroup.rotate(0.001)
for (var i = 0; i < rootGroup.children.length; i++) {
var path = rootGroup.children[i]
if (path.strokeColor) {
path.strokeColor.hue -= 1
path.opacity = 0.5
}
}
}
rootGroup.position = view.center