Code
var bg = new Path.Rectangle({
size: view.bounds,
fillColor: 'black',
position: view.center
})
var path = new Path.Circle({
radius: 100,
strokeColor: 'blue',
center: view.center
})
var dash = 40
var offset = 2
var strokeWidth = 10
var gap = 15
var group = new Group()
var i = 0
while (i < path.length) {
var newPath = new Path({
strokeColor: 'blue',
strokeWidth: strokeWidth
})
newPath.add(path.getPointAt(i))
for (dist = 0; dist < dash; dist += 1) {
if (i + dist < path.length) {
newPath.lineTo(path.getPointAt(i + dist))
newPath.strokeCap = 'round'
}
}
group.addChild(newPath)
i += dash + offset
newPath.strokeColor.hue = i
}
var amountOfCircles = 12
var circlesGap = 0.25
var groupAll = new Group()
for (var i = 2; i < amountOfCircles; i++) {
var clone = group.clone()
clone.scale(circlesGap * i)
groupAll.addChild(clone)
}
group.remove()
function onFrame(event) {
for (var i = 0; i < groupAll.children.length; i++) {
var rootGroup = groupAll.children[i]
for (var m = 0; m < rootGroup.children.length; m++) {
rootGroup.children[m].strokeColor.hue += 2
rootGroup.rotate(0.04)
}
}
}
path.remove()