visuallisp编程在海洋石油工程配管设计中的实践研究

visuallisp编程在海洋石油工程配管设计中的实践研究

ID:25105101

大小:80.00 KB

页数:5页

时间:2018-11-18

visuallisp编程在海洋石油工程配管设计中的实践研究_第1页
visuallisp编程在海洋石油工程配管设计中的实践研究_第2页
visuallisp编程在海洋石油工程配管设计中的实践研究_第3页
visuallisp编程在海洋石油工程配管设计中的实践研究_第4页
visuallisp编程在海洋石油工程配管设计中的实践研究_第5页
资源描述:

《visuallisp编程在海洋石油工程配管设计中的实践研究》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、VisualLisp编程在海洋石油工程配管设计中的实践研宄李晓赫(中海油能源发展股份有限公司油田建设渤海工程分公司,天津300452)摘要:为了提高配管加工的效率和质量,尽量减少人工操作,最大程度的实现设计的智能化,以Visuallisp为编程语言的,对AutoCAD的二次开发,已取得了飞速进展。配管加工设计正在向自动化迈进。并且,已经有很多开发出来的工具己经用在了多个工程项目及其相关的配管加工设计。木文针对Visuallisp这一编程语言进行初步探讨和分析,并将其运用在配管加工设计之上。以期在配管加工设计这一领域更快的步入现代化、智能化和自动化。关键词:Vi

2、suallisp;海洋石油工程;配管加工设计;AutoCAD二次开发海洋平台具有复杂的系统和庞大的规模,空间十分密集。所以,海洋平台及其与它相关的FPSO上部工艺的配管工程,多采用PDS和PDMS等配管软件,以建立三维模型。从而,从这些三维模型中的配管图抽出来进行设计。管线的种类繁多,数量庞大,系统多。为了解决这个问题,提高效率,加强施工管理,需要添加相应的单管号、流水号、预设和现场连接口号等。AutoCAD原理上能够完成单管号、流水号、预设和现场连接口号的添加工作,问题是,它的操作相当繁琐、复杂。致使工作效率低下,并且产生重号、漏号等现象。懂得AutoCAD

3、的操作人员都知道,对于单管号、流水号、预设和现场连接口号的添加实际上是一些AutoCAD软件的最基木的文字、直线、圆形等命令的重复使用和反复操作。那么,想办法将这些基木命令有序的组合在一起,才能更高效的解决这一问题。AutoCAD软件除了强大的绘图功能之外,还具备二次开发功能。这一功能可以实现很多特殊的指令,从而达到简化操作的目的。这才是提高工作效率的关键所在。这对于数量众多配管三维图的加工设计具有很高的现实意义。对AutoCAD进行二次开发,Visuallisp语言具有很高的实用价值。它可以轻松、直接的增改AutoCAD的有关指令,从而,更充分地对AutoC

4、AD进行二次开发。比如:扩展图形编辑的相关功能,图库和数据库的建立,对图形的修改和访问等等。它不仅操作简单,而且,使用者的大多数需求都可以得到满足,甚至为使用者提供相对特殊的功能及相关解决方案。1编程实现1.1添加信息。“layer”命令可以添加新的图层,以便于用户方便地添加需要的信息,对数据进行编辑、分析、修改和提取。“style”命令可以根据需要设置文本样式。一般在“text”命令调用前进行相关设置。“OSMODE”变量值的设置可以在开始编程吋,关闭对象的捕捉。“OSMODE”变量值的设置可以关闭正交。以免受到干扰影响绘制正交直线。“read-line”命

5、令的调用可以将需要的数据预先保存在记事本当中,从而减少人工的劳动力。如:字体的高度、颜色等。这些不常变动的数据都可以保存起来,以免进行不必要的重复操作。"stnct"命令可以将三维图中的流水号和相应的序号提取并组合起来,形成现场连接U号。并且,在编完一只连接口号后会自动增加一位的计数。从而,实现编号的自动化。“ssget”可以建立选择集,这些包含流水号对象的选择集的流水号文本符合“*@-鼎#”的形式,并通过它知道流水号文本所在图层。“ssname”、“entget”、“assoc”、“cdr”等函数分别用于选择及处理、对象处理、列表处理等。除以上命令之外,还需

6、要了解“atof”的实行数转换功能以及“rectang”命令的绘画边框功能。综上分析,下面具体说明在Visuallisp编程三维图流水号吋如何添加信息。(defunC:Ishadd()(setvar,,CMDECHO"O)(selvar,,OSMODE,,O)(vl-cmdfnORTHO""OFF")(setqfp(open(setqfp(findfileHcolor.txt"))"r"))(setqcolor(atoi(read-linefp)))(closefp)(if(not(tblsearch"layer""流水号"))(command"layeri…

7、Mun流水号…,L•…Continuous""流水号"nC"color"流水号……)(command"layer""S’"•流水号"nC"color"流水号"nn"n))(if(not(tblsearehnstyle"nhztxt"))(command"style""hztxtn,■宋体n01Onn""nn"n"))(setqPl(getpoint"、n请选择三维图边框右上角顶点:"))(setqfp(open(setqfp(findfile"height.txt"))nrn))(setqheight(atof(read·linefp)))(cl

8、osefp)(setqfp(open(

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。