编程实现绘图程序暂停研究.pdfVIP

  1. 1、本文档共4页,可阅读全部内容。
  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文档。上传文档
查看更多
第十三届全国工程建设计算机应用学术会议论文集 广东佛山·2006 编程实现绘图程序暂停 马德建1 张利娟2马东林3 (1.上海源泉装饰工程公司,南京工业大学土木工程学院 2.公安海警高等专科学校。。 3.上海源泉装饰工程公司) 【摘要】用VBA开发的{GJGSJl.0》钢结构绘图软件,使钢结构详图绘制,构件统计汇总非常方 便。但用VBA开发的程序在AutoCAD中不支持暂停功能,这就限制了更强大功能的开发。在经过多次 努力后用编程实现程序暂停,开发出了大型绘图模块。 【关键词】钢结构;详图设计;AutoCAD;VBA 1 引言 钢结构的详图设计要注明每一个构件的详细尺寸、加工精度、构件重量、汇总构件明 细。这是一个精细、繁杂、量大的工作。随着我国进入市场经济时代,投资方对施工工期 要求越来越短,使量大繁杂的钢结构施工详图设计成为钢结构施工的瓶颈。钢结构绘图软 件GHGSJ是为了减轻详图的设计工作量,提高详图设计效率。但在编制大型绘图模块时发 现AutoCADActiveX技术不支持程序暂停功能。无程序暂停功能就不能实现对象精确捕捉, 不能精确捕捉就限制了模块功能。 2程序暂停 AutoCAD是一种具有高度开放结构的CAD平台软件,它提供给编程者一个强有力的 二次开发环境。自AutoCADR14版以后,AutoCAD采用了一种在OLE2.0基础上发展起 Automation 来的新技术,称这为ActiveX 由于ActiveX技术是一种完全面向对象化编程的特点,使其开发环境具备了强大的开发能 的对象,按一定的层次组成的一种对象结构,每一个对象代表了AutoCAD中一个明确的功 可以实现编程的目的。 i ~ :.. 第十三届全国工程建设计算机应用学术会议论文集 广东佛山·2006 三维点。该方法执行后,系统暂停下来等待用户在窗口选择。用户选择点后就可把编程实 现的图形模块插入图形中所需的位置。小型模块一般只需选择一个点,插入模块比较好实 现。大型模块大多需要选择二个以上点,点与点间的距离大多较远,要捕获距离较远的点 一般需要缩放窗口来实现精确捕捉。AutoCAD的缩放命令具有暂停功能,缩放窗口后可继 续实现精确捕捉。但GetPoint方法不支持暂停功能,在选择点时如果缩放窗口就中断了插 入模块。这样在插入大型模块时要么不缩放窗口,要么不能精确捕捉距离较远的点。 3编程实现暂停 在经过多次摸索后,我们采用编程实现了程序暂停。 第一次我们先设置一个已知值,如果选择的点的x座标不等于这个已知值就返回要求 再次选择。 gnl: Then IfPick(0)◇PTLl GoTognl EndIf 达到精确捕捉点目的,但还存在捕捉点与已知点重合的有可能,从而选择到错误的点(这 种可能性很,J、)。 我们又改进程序: gnl: If GoTo Pick(0)=…‘Thengnl EndIf Pick(0)为要选择点的x座标。利用未选择点的x座标为空值的方法来实现程序暂停, 从而实现精确捕捉点。 在使用中发现在捕捉点时有时需要中止点的选择,为此再次改进。先定义一个自定义 函数CheckKey。 DeclareFunction As Lib”user32”(ByValLong)AsInteger GetAsyncKeyState vKey PublicFunction As Boolean Long)As CheckKey(1ngKey

文档评论(0)

开心农场 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档