Ask Your Question

Revision history [back]

click to hide/show revision 1
initial version

animation of hypocycloid in sage

Hey All, Basically I have an assignment for a college sage class. I need to make a hypocycloid animation with basic sage commands. Here is what I have so far:

sage: crank = circle((0,0),1/3, color='black') crank.show(xmin=-5,xmax=5,ymin=-5,ymax=5)

sage: movingcircle = [circle((3cos(2kpi/10),3sin(-2kpi/10)), 1/5, color='black') for k in range(10)] mcani = animate(movingcircle,xmin=-5,xmax=5,ymin=-5,ymax=5) mcani.show()

Sage: candmcani = [crank+mcani[k] for k in range(10)] acandmcani = animate(candmcani,xmin=-5,xmax=5,ymin=-5,ymax=5) acandmcani.show()

I am stuck here. How am I supposed to create a hypocyloid animation like this: Here is the end product that is needed: and

Basically need the commands and a few frames. I understand the idea, and its pretty cool, but am stuck at the circles part. How am I supposed to make those joints?

animation of hypocycloid in sage

Hey All, Basically I have an assignment for a college sage class. I need to make a hypocycloid animation with basic sage commands. Here is what I have so far:

sage: crank = circle((0,0),1/3, color='black')
crank.show(xmin=-5,xmax=5,ymin=-5,ymax=5)

crank.show(xmin=-5,xmax=5,ymin=-5,ymax=5)

sage: movingcircle = [circle((3cos(2kpi/10),3sin(-2kpi/10)), [circle((3*cos(2*k*pi/10),3*sin(-2*k*pi/10)), 1/5, color='black') for k in range(10)] mcani = animate(movingcircle,xmin=-5,xmax=5,ymin=-5,ymax=5) mcani.show()

mcani.show()

Sage: candmcani = [crank+mcani[k] for k in range(10)] acandmcani = animate(candmcani,xmin=-5,xmax=5,ymin=-5,ymax=5) acandmcani.show()

acandmcani.show()

I am stuck here. How am I supposed to create a hypocyloid animation like this: Here is the end product that is needed: and

Basically need the commands and a few frames. I understand the idea, and its pretty cool, but am stuck at the circles part. How am I supposed to make those joints?