李洪声论文课稿.docVIP

  1. 1、本文档共14页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
2013年全国冶金职业技术院校 论文编号: 优秀论文评选参评论文 数控铣床图形编程系统零件图元排序程序设计 作者姓名:李洪声 单 位:西安工程技术学院 通讯地址:西安市长安区东大镇高冠河桥 邮政编码:710114 联系电话 学院(校)推荐意见: (单位公章) 数控铣床图形编程系统零件图元排序程序设计 ?? 【摘要】基于autoCAD数控铣床图形自动编程系统设计中,本文利用Visual C++6.0语言设计一个比较完整的零件轮廓图元排序程序。首先介绍了定义了存储各图元信息数据结构,定义了双向链表结点复合结构体类型。利用list列表容器存储非均匀B样条曲线信息。设计比较函数以及链表操作函数,简化了排序程序设计。 【关键词】数控铣床自动编程 排序程序 非均匀B样条曲线 双向链表 在WindowsXP操作平台上,以AutoCAD2004绘图软件为开发平台、采用可视化程序设计语言Visual C++6.0设计开发适于PC机数控系统上使用的数控铣床图形编程系统。系统框架结构如图1所示读入模块读取存储零件各图元几何信息 设计人员采用AutoCAD对加工的零件实体建摸后,将图形信息以DXF文件格式存储读入模块通过分析DXF文件格式,读取CAD图形实体数据, 存储零件的几何和参数读入双向连表模块将存储各图元信息结构体进行排序组环(3)工艺设置模块对话框交互式输入工艺参数。(4)生成代码模块对(2)中的存储零件轮廓环的双向链表中各结点结构体中的图元类型、环方向进行判断并根据输入的工艺参数进行相应处理生成数控加工程序代码。本文主要介绍了Visual C++6.0语言零件图元过程。首先介绍了定义了存储各图元信息数据结构,利用list列表容器非均匀B样条曲线 取链表L中第i个结点、与i结点后所有的结点j进行比较、如果值相等则j结点插入i结点后。本文用Visual C++6.0编制的部分组环排序程序如下: Int CDDDDOC∷Paixu( ) ∥排序函数 {int N=0, i , j,K ; N= ListLength(L); ∥获取双向链表L中图元数量。 For(i=1; iN ; i++) { Gunite e1; //定义结构体 GetElem(L ,i, e1 ) ∥取结点i K=0, j=i {Gunite e2; //定义结构体 While(k!=1) { j=j+1; GetElem(L ,i ,e2 ) ∥取双向链表L中第j+1个结点 If(e1.type=“直线L” e2.type=“圆弧R”‖e1.type=“圆弧R”e2.type=“直线L”) {m_drawing drawingLp1 , drawingLp2 ;//直线圆弧结构体 drawingLp1=e1.m_data drawingLp2=e2.m_data K=compare (drawingLp1 , drawingLp2 ) } Else if( e1.type =“非均匀B样条” e2.Type=“直线L”) {FeiType Fe ; //B样条非均匀结构体 m_drawing L; //直线结构体 Fe=e1.m_Fei ; L= e2.m_data; K= copare(Fe, L)} Else if(…) {…} … else (…) {…}} ListInsert(L ,i+1.e2) ; ∥在链表中第i个结点之后插入第j个结点 ListDelete(L ,j+1) ∥删除原位置第j个结点 }} 四、结束语 本文定义了存储各类图元数据结构体,对存储非均匀B样条曲线信息结构体使用C++标准函数库子集STL中list列表容器作为成员变量存储节点和控制顶点等信息,从而可简化读取模块设计。利用迭代和访问方法、可变序列算法和不可变序列算法对列表容器中的元素进行正反迭代指向返回元素个数、查找、排序等操作,从而可大大简化图形编程系统非均匀B样条后处理模块设计。 用Visual C++6.0设计双向链表读入程序,设计比较函数以及双向链表操作函数简化了双向链表图元排序程序设计。经运行排序程序、存储零件各图元链表排序结果正确。 参考文献 [1]谭浩强. C++程序设计[M]. 北京:清华大学出版社,200 [2] 郑莉,董渊,张瑞丰. C++语言程序设计(第3版)[M]. 北京:清华大学出版社, 2004 [3]孙鑫,余安萍. VC++深入祥解[M]. 北京:工业出版社, 2006 第 3 页

文档评论(0)

bbnnmm885599 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档