- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
《CAD程序设计》课程设计
指 导 书
环境与建筑工程学院测绘教研室
《CAD程序设计》课程设计大纲
课程类别:比修 学 时:1周
课程性质:实践教学 开课学期:第7学期
开课专业:测绘工程
先修课程: AutoCAD,计算机高级语言
课程设计的基本目的与任务
本课程设计是测绘工程的专业技术实践课。本实践课的主要目的和任务是:(1)、掌握Visual Lisp程序设计的方法;(2)掌握Visual Lisp操纵AutoCAD的程序设计方法;(3)掌握在 Visual LISP 中使用AutoCAD ActiveX 对象的方法;(4)掌握在 Visual LISP 中使用可编程对话框制作用户界面的方法;(5)掌握自定义 AutoCAD界面的方法。
教学基本要求
课程设计的进行方式是在教师指导下由学生独立完成的。每个学生都应该明确设计任务和要求,并拟定设计计划,注意掌握进度,按时完成。设计分段进行,每一阶段的设计都要认真检查,没有原则错误时才能继续进行下一段设计,以保证设计质量,循序完成设计任务。设计过程中要独立思考、深入钻研,主动地、创造性地进行设计,反对照抄照搬或依赖教师。要求设计态度严肃认真,有错必改,反对敷衍塞责,容忍错误存在。只有这样才能保证课程设计,达到教学基本要求,在设计思想、设计方法和设计技能等方面得到良好的训练。
课程设计的内容
通过资料查阅和学习了解Visual Lisp程序设计的方法;
设计程序算法、绘制流程图;
建立AutoCAD菜单、工具条、按钮;
设计程序的用户界面;
编写程序代码、调试程序;
编写课程设计报告。
课程设计的学时分配
教学内容
学时
地点
1、集中学习
半天
教室
资料查阅与学习,讨论
1天
图书馆、实验室
设计程序算法、绘制流程图
2天
实验室
建立AutoCAD菜单、工具条、按钮
半天
实验室
设计程序的用户界面
1天
实验室
编写程序代码、调试程序
1天
实验室
编写课程设计报告
1天
教室
注:课程设计总结论文业余时间完成。
课程设计总结论文要求
综述;
设计程序算法、绘制流程图;
建立AutoCAD菜单、工具条、按钮的方法;
设计程序的用户界面;
设计总结。
(6) 附录:源程序
参考题目
判断一个点是否在闭合多边形的里面,该多边形的边界是由线段和园弧组成。
判断一个闭合多段线是否交叉,该多段线是由线段和园弧组成。
用多段线生成Hatch实体的边界线。
设计一个程序解决汉诺塔问题:有三根柱子,分别为A、B、C,A柱上有一叠按大小顺序叠好的盘子,要求每次只能移动一个盘子,盘子的大小顺序不能改变,且盘子不能离开这三根柱子,将A柱上的盘子全部移到C柱。
设计一个程序将指定区域外的图形剪断,并将区域内的图形保存到一个文件中。
主要参考资料
《AutoCAD 2004 命令参考》
《AutoCAD 2004 自定义手册》
《软件工程》
《AutoLISP Developers Guide》
《AutoLISP Reference》
《DXF 参考》
《ActiveX 和 VBA 开发人员指南》
《ActiveX and VBA Reference》
《计算机图形学》
几个Visual Lisp程序设计实例
第一个实例:判断一指定点与某个三角形的关系(用autolisp实现)
判断一指定点与某个三角形的关系:1.在三角形三边上;2.在三角形内;3.在三角形外
算法:
一.输入的数据
假设三角形的三顶点为:p1 p2 p3
指定点为:p0
二.作辅助线
1.从p1 p2 p3中选择一点pt使之与p0不相同,三角形的其余点为pta,ptb
2.以pt和p0作一射线(p0端无限延长)RL,以pta和ptb作一构造线(两端无限延长)XL
3.求RL和XL的交点。
三.判断两辅助线是否平行
4.如果无交点,则p0在三角形外;如果有交点,则设交点为xp
四.判断p0是否在三角形的三边上
5.如果xp等于p0,则进一步判断:
如p0在线段(pta--ptb)外,则p0在三角形外;否则p0;在三角形的三边上
6.如果xp等于pta,则进一步判断:
如p0在线段(pt--pta)外,则p0在三角形外;否则p0;在三角形的三边上
7.如果xp等于ptb,则进一步判断:
如p0在线段(pt--ptb)外,则p0在三角形外;否则p0;在三角形的三边上
五.判断p0是否在三角形外
8.如果xp在线段(pta--ptb)外,则p0在三角形外
9.如果p0在线段(pt--xp)外,则p0在三角形外
10.以上条件都不满足,则p0在三角形内
实现方案
1.定义
文档评论(0)