发布信息

一种基于ObjectARX的零件块导入方法 专利技术说明

作者:admin      2023-06-28 21:03:30     943



计算;推算;计数设备的制造及其应用技术一种基于objectarx的零件块导入方法技术领域1.本发明涉及一种零件块导入方法,尤其涉及一种基于objectarx的零件块快速导入方法。背景技术:2.船舶设计技术在“互联网+”战略的提出下,已经逐步进入了信息化、智能化时代。传统手工导入零件的方式不断被计算机设计所取代,充分应用计算机技术的简洁性、一体化等设计方法可以极大减少了产品设计制造的时间、提高了设计质量,大大缩短了船舶的设计周期。cad/cae化的船舶设计过程中存在海量的工程零件。这些零件若一个个通过人工导入,会占用非常多的时间,效率低下,也会使得后期的出图工作变得复杂,整个设计周期大大延长。技术实现要素:3.发明目的:本发明的目的是提供一种基于objectarx的零件块快速导入方法。4.技术方案:本发明所述方法包括如下步骤:5.(1)在autocad中加载主程序,通过appload命令运行;6.(2)读取当前图形数据库对象,将保存的实体对象id,导出到一个新的图形数据库;7.(3)将外部数据库的所有内容作为一个块表记录保存在当前的图形数据库中并添加当前图形数据库的其他块表记录,并检查是否存在指定记录;8.(4)将临时数据库中的所有数据导入至当前的dwg图纸当中,已经存在于图纸中的不再重复导入。9.进一步地,所述步骤(1)中autocad是一系列存放在一个acdbdatabase类型的数据库中的acdb对象,利用acdbdatabase类中的成员函数将当前图形数据库的对象导出到一个新的图形数据库中,从而实现零件块的一键导入。10.进一步地,所述步骤(2)中将保存的实体对象id导出到一个新的图形数据库,重载会主动新建一个临时的图形数据库并自动销毁。11.进一步地,所述步骤(3)中的三个重载函数借助临时数据库作为数据的中转站,将数据导出之后,用insert函数将保存在临时数据库中的数据导入到当前的图形数据库。12.进一步地,所述三个重载为:13.(31)将外部数据库的所有内容作为一个块表记录保存在当前的图形数据库中;14.(32)将外部图形数据库中的所有内容插入到当前的数据库;15.(33)在重载的基础上,添加当前图形数据库的其他块表记录。16.有益效果:本发明与现有技术相比,具有如下显著优点:可以帮助节省繁琐的计算时间,从而提高后续工作的效率,使用方便,功能高效且代码具有很强的可重用性。附图说明17.图1为本发明的流程图。具体实施方式18.下面结合附图对本发明的技术方案作进一步说明。19.本发明所述方法包括如下步骤:20.(1)在autocad中加载arx程序后,通过appload命令运行,输入“零件管理”,跳转至软件主界面。21.(2)读取当前图形数据库对象,将保存的实体对象id(这个对象id只能是保存在块表中的实体对象)导出到一个新的图形数据库中。22.(3)将外部数据库的所有内容作为一个块表记录保存在当前的图形数据库中并可以添加当前图形数据库的其他块表记录,还需检查是否存在指定记录。23.(4)将临时数据库中的所有数据导入至当前的dwg图纸当中,对于已经存在与dwg图纸中的块,不会重复插入。24.上述方法来自acdbdatabase类,在这个类中通过wblock和insert方法可实现零件块的一键导入功能,其优势在于使用方便,功能高效且代码具有很强的可重用性。25.在objectarx中,不同图形数据库之间是完全独立的,要在两个数据库之间传递数据有多种方式。autocad图形实际上是一系列存放在一个acdbdatabase类型的数据库中的acdb对象,在acdbdatabase类中的wblock成员函数可以将当前图形数据库的对象导出到一个新的图形数据库中。26.如图1所示为本发明基于objectarx的零件块一键导入实现方法的流程示意图,其包括以下步骤:27.(1)在autocad中加载arx程序后,通过appload命令运行;具体实现方法为:28.打开autocad,加载已经生成的arx程序,显示加载成功后,输入“零件管理”,跳转至软件主界面。29.(2)读取当前图形数据库对象,将保存的实体对象id(这个对象id只能是保存在块表中的实体对象)导出到一个新的图形数据库中;具体实现方法为:30.在objectarx中new一个数据库指针,通过这个指针搜寻mysql零件路径,并以只读方式打开零件数据库。31.(3)将外部数据库的所有内容作为一个块表记录保存在当前的图形数据库中并可以添加当前图形数据库的其他块表记录;具体实现方法为:32.将外部图纸中的所有内容制作成块,添加到当前图形数据库中,重载insert函添加当前图形数据库中的其他块表记录,还需检查是否存在指定记录,具体实现方式为:33.在搜索块表记录时,利用if语句检查指定记录是否存在,若不存在则通过close函数销毁临时数据库指针。34.(4)将临时数据库中的所有数据导入至当前的dwg图纸当中;具体实现方法为:35.通过循环代码搜索块表记录,若当前存在指定记录,则获得图块id,通过wblock函数输出图块,再利用insert函数插入数据,最终在当前dwg图纸中显示块实体,对于已经存在与dwg图纸中的块,不会重复插入,具体实现方式为:36.将获取的图块id作为参数传入wblock函数,在wblock函数中判断,若图块id已经存在,则不再重复插入对应图块。技术特征:1.一种基于objectarx的零件块导入方法,其特征在于:所述方法包括如下步骤:(1)在autocad中加载主程序,通过appload命令运行;(2)读取当前图形数据库对象,将保存的实体对象id,导出到一个新的图形数据库;(3)将外部数据库的所有内容作为一个块表记录保存在当前的图形数据库中并添加当前图形数据库的其他块表记录,并检查是否存在指定记录;(4)将临时数据库中的所有数据导入至当前的dwg图纸当中,已经存在于图纸中的不再重复导入。2.根据权利要求1所述的基于objectarx的零件块导入方法,其特征在于:所述步骤(1)中autocad是一系列存放在一个acdbdatabase类型的数据库中的acdb对象,利用acdbdatabase类中的成员函数将当前图形数据库的对象导出到一个新的图形数据库中,从而实现零件块的一键导入。3.根据权利要求1所述的基于objectarx的零件块导入方法,其特征在于:所述步骤(2)中将保存的实体对象id导出到一个新的图形数据库,重载会主动新建一个临时的图形数据库并自动销毁。4.根据权利要求1所述的基于objectarx的零件块导入方法,其特征在于:所述步骤(3)中的三个重载函数借助临时数据库作为数据的中转站,将数据导出之后,用insert函数将保存在临时数据库中的数据导入到当前的图形数据库。5.根据权利要求3所述的基于objectarx的零件块导入方法,其特征在于:所述三个重载为:(31)将外部数据库的所有内容作为一个块表记录保存在当前的图形数据库中;(32)将外部图形数据库中的所有内容插入到当前的数据库;(33)在重载的基础上,添加当前图形数据库的其他块表记录。技术总结本发明公开了一种基于ObjectARX的零件块导入方法,所述包括如下步骤:在AutoCAD中加载主程序,通过APPLOAD命令运行;读取当前图形数据库对象,将保存的实体对象ID,导出到一个新的图形数据库;将外部数据库的所有内容作为一个块表记录保存在当前的图形数据库中并添加当前图形数据库的其他块表记录,并检查是否存在指定记录;将临时数据库中的所有数据导入至当前的DWG图纸当中,已经存在于图纸中的不再重复导入。本发明可以帮助节省繁琐的计算时间,从而提高后续工作的效率,使用方便,功能高效且代码具有很强的可重用性。效且代码具有很强的可重用性。效且代码具有很强的可重用性。技术研发人员:王庆丰 高玉珍 王洁涵 周恒受保护的技术使用者:江苏科技大学技术研发日:2023.03.06技术公布日:2023/6/27









图片声明:本站部分配图来自人工智能系统AI生成,觅知网授权图片,PxHere摄影无版权图库。本站只作为美观性配图使用,无任何非法侵犯第三方意图,一切解释权归图片著作权方,本站不承担任何责任。如有恶意碰瓷者,必当奉陪到底严惩不贷!




内容声明:本文中引用的各种信息及资料(包括但不限于文字、数据、图表及超链接等)均来源于该信息及资料的相关主体(包括但不限于公司、媒体、协会等机构)的官方网站或公开发表的信息。部分内容参考包括:(百度百科,百度知道,头条百科,中国民法典,刑法,牛津词典,新华词典,汉语词典,国家院校,科普平台)等数据,内容仅供参考使用,不准确地方联系删除处理!本站为非盈利性质站点,发布内容不收取任何费用也不接任何广告!




免责声明:我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理,本文部分文字与图片资源来自于网络,部分文章是来自自研大数据AI进行生成,内容摘自(百度百科,百度知道,头条百科,中国民法典,刑法,牛津词典,新华词典,汉语词典,国家院校,科普平台)等数据,内容仅供学习参考,不准确地方联系删除处理!的,若有来源标注错误或侵犯了您的合法权益,请立即通知我们,情况属实,我们会第一时间予以删除,并同时向您表示歉意,谢谢!

相关内容 查看全部