Dual Axis Illusion 2
Setup Script
CurH = Curve((cos(2φ), cos(3φ), sin(3φ)), φ, 0°, 361°)
CurV = Curve((sin(2φ), cos(3φ),-cos(2φ)), φ, 0°, 361°)
α = Slider(-720°,720°,2°, 0.25, 200, true, true, true)
k = 2 + floor(α / (360°))
hor = (k==1 || k==3)
RotH = Rotate(CurH, abs(α) * 1.5, xAxis)
RotV = Rotate(CurV, abs(α) - 90°, yAxis)
opac(α) = ((1-cos(α))/2)^1.2
CylH = (y^2+z^2=0.5)
CylV = (x^2+z^2=0.5)
#=============================================
# Setting
#=============================================
SetActiveView(-1)
SetBackgroundColor("Black")
SetViewDirection((0,0,-1))
ShowAxes(-1,false)
ShowGrid(-1,false)
ZoomIn(-1.3,-1.3,-1.3, 1.3, 1.3, 1.3)
SetConditionToShowObject(CurH,false)
SetConditionToShowObject(CurV,false)
SetConditionToShowObject(opac,false)
SetConditionToShowObject(RotH, hor)
SetConditionToShowObject(RotV,!hor)
SetColor(RotH,"White")
SetColor(RotV,"White")
SetLineThickness(RotH,20)
SetLineThickness(RotV,20)
SetConditionToShowObject(CylH, hor)
SetConditionToShowObject(CylV,!hor)
SetDynamicColor(CylH, 1,0.4,0, If( hor,opac(α),0))
SetDynamicColor(CylV, 0,0.4,1, If(!hor,opac(α),0))
SetValue(α,0)
StartAnimation(α,True)
#=============================================
# After Setup:
#=============================================
# α : Set repeat: Increasing
# RotH: Set Hidden Line Style: Unchanged
# RotV: Set Hidden Line Style: Unchanged
# If curve isn't clear white then use Setup again