- 1、本文档共7页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
牛头刨床C语言模拟
图:牛头刨床各点标号
思路:【采用擦-画-擦方法绘制动画】
把各个坐标值表示成θ、L1、L2、A的函数,然后有序连接各坐标点绘成一幅画,暂停一定时间后将原先画的图画擦除,同时使变量θ变化一个增量,然后再画一幅新的图画,如此循环,便构成一部动画,通过动画可以明显地看到牛头刨床的运动特性。
#includestdio.h
#includegraphics.h
#includemath.h
#define PI 3.1415926
#define X 300 /*相对坐标原点X,Y*/
#define Y 300
main()
{
double l1,l2,l3,a,k,h,t;
int drive=DETECT,gmode;
int m;
double i,j; /*i为a杆的转角θ,j为连杆的转角φ*/
struct ss
{double x,y;};
struct qq
{int x,y;};
struct ss aa[42]; /*定义42个计算坐标点*/
struct qq bb[42]; /*定义42个绘图坐标点*/
printf(please input the length of l1,l2,a\n\nJust like 100,80,30\n);
scanf(%lf,%lf,%lf,l1,l2,a); /* 输入杆长及位置尺寸*/
k=a/5.0;h=10;t=10;
initgraph(drive,gmode,c:\\tc); /*初始化图形界面*/
setbkcolor(11); /*背景色为淡蓝色*/
for(i=0;;i+=PI/400) /*每次旋转PI/400画一幅图*/
{
l3=sqrt(a*a+l2*l2-2*a*l2*cos(i));
j=acos((l2*l2+l3*l3-a*a)/(2*l2*l3));
if(i=2*PI) /*对转角进行处理*/
{i-=2*PI;}
else if(i=PI)
{j=0-j;}
aa[0].x=aa[0].y=0; /*计算各点的坐标值*/
aa[8].x=0; aa[8].y=l2;
aa[14].x=a*sin(i); aa[14].y=l2-a*cos(i);
aa[6].x=(l1+l2)*tan(j); aa[6].y=l1+l2;
aa[13].x=k*cos(j)-k*sin(-j)+aa[14].x; aa[13].y=k*sin(-j)+k*cos(j)+aa[14].y;
aa[12].x=-k*cos(j)-k*sin(-j)+aa[14].x;aa[12].y=-k*sin(-j)+k*cos(j)+aa[14].y;
aa[15].x=-k*cos(j)+k*sin(-j)+aa[14].x;aa[15].y=-k*sin(-j)-k*cos(j)+aa[14].y;
aa[16].x=k*cos(j)+k*sin(-j)+aa[14].x;aa[16].y=k*sin(-j)-k*cos(j)+aa[14].y; aa[27].x=-(l1-a-k)*sin(j)+aa[6].x; aa[27].y=-(l1-a-k)*cos(j)+aa[6].y;
aa[9].x=-(l1-a-2*k)*sin(j)+aa[6].x;aa[9].y=-(l1-a-2*k)*cos(j)+aa[6].y; aa[11].x=k*cos(j)+aa[27].x;aa[11].y=-k*sin(j)+aa[27].y;
aa[10].x=-k*cos(j)+aa[27].x;aa[10].y=k*sin(j)+aa[27].y;
aa[29].x=-(l1+l2-k)*sin(j)+aa[6].x;aa[29].y=-(l1+l2-k)*cos(j)+aa[6].y;
aa[20].x=-(l1+l2-2*k)*sin(j)+aa[6].x;aa[20].y=-(l1+l2-2*k)*cos(j)+aa[6].y;
aa[21].x=-k*cos(j)+aa[29].x;aa[21].y=k*sin(j)+aa[29].y;
aa[22].x=k
您可能关注的文档
最近下载
- 高等教育法规概论(详细).pdf
- 6.3.3 平面向量加、减运算的坐标表示(同步课件)-2024-2025学年高一数学(人教A版2019必修第二册).pptx
- GB30871-2022 危险化学品企业特殊作业安全规范.pdf
- 2024内蒙古科技职业学院教师招聘考试笔试试题 .pdf VIP
- 工业互联网标识解析应用案例汇编集(2021年).pdf VIP
- 2013款长安福特蒙迪欧致胜_汽车使用手册用户操作图解驾驶车主车辆说明书电子版.pdf
- 2024临沂科技职业学院教师招聘考试笔试试题.docx VIP
- 车辆维修保养知识课件PPT.pptx
- 2024四川科技职业学院教师招聘考试笔试试题.docx VIP
- 2024德州科技职业学院教师招聘考试笔试试题.docx VIP
文档评论(0)