摘要:

Aveva Marine是Aveva公司收购Tribon公司之后,整合了M3和PDMS两大模块。现在AM解决方案在船舶和海洋工程行业应用日趋成熟,这得益于M3在船体结构方面的成熟市场,和PDMS在舾装管系方面的强大。

1.前言

M3在船舶生产设计中已经被普遍使用,并且得到行业中的一致认可。由于M3是基于欧洲的造船工艺开发,在国内十几年的引进使用中,也进行了大量的二次开发。M3的二次开发主要基于Vitesse接口,一种基于Python语言的脚本程序。PDMS原先应用于虚拟工厂,石油管道布置等行业。对于这些行业PDMS有一套成熟的解决方案。PDMS内部提供了PML一种宏语言,来为客户提供二次开发的接口。

由于M3是被PDMS厂商进行收购,组合形成了AvevaMarine。在多年的使用软件和软件更新中,发现Aveva公司努力把M3中的数据结构,转变到PDMS的体系结构中。为了更好的使用和拓展AM软件,所以,作为船体设计者很有必要对新的数据变化进行研究。

2.PML语言

PML语言是Aveva公司自己开发的一种宏语言。目前,新的语言版本是 PML2,是一种面向对象的语言。相比其他语言PML有如下优势

优势1:语言是脚本语言,可以用记事本直接编写。而且不用编译,可以做到边编写,边调试。

优势2:PML语言具有很强的访问数据结构的能力,只需简单的一句话,就能获得需要得到的数据。

优势3:PML2是一种面向对象的语言,能够直接调用.net开发的接口函数。大大增强了PML的能力

3.船体结构标注

船体结构主要有板厚,筋,肘板等,对这些结构进行进行名称,材质,规格等信息标注是船体生产设计的主要工作内容。M3对标注提供接口有ConfigNote.py和Drafting中的note_new。这两个接口函数可调整的范围比较小,出来的结果也远不能满足设计上面的要求。其中ConfigNote.py本身就存在错误的接口,导致很多功能都无法实现。在实际设计中,也被用的比较少。我见过的很多开发标注程序,基本都是在图面绘制文字和线型。虽然能够满足出图要求,但是,标注信息与模型关联度不够。总觉得还差那么一点点。

4.利用PML对船体结构进行标注

4.1   PDMS中的GLAB和SLAB节点

节点Element在PDMS是一种带属性的数据结构。这些结构通过Explorer浏览器进行浏览。M3虽然也有节点的概念,但是是底层的数据结构存储模式,并不对设计员和开发者开放。而PDMS却是完全开放的。

GLAB和船体中的Note类似,是一种单行的标注方式,可以通过设置BTEXT属性值,匹配船体模型中的信息。如#FLNM() 显示模型元素的内部名。

SLAB是一种自定义的标注方式,通过自定义一种Symbol Library,在标注时就能够按照模板对结构进行标注。标注样式就是我们的模板样式。在这里我们使用SLAB进行出图标注。

4.2 利用PML对板材进行标注

第一步,我们需要建立一个SYTM为节点的符号模板。这个模板中使用#PrtIDl来匹配板材模型的零件名,#Thickn来匹配零件的厚度,#QuaTxt来匹配零件的材质。

第二步,选中View节点,新建一个Laye节点,在Laye节点下新建一个SLAB节点。

第三步,对SLAB节点进行属性设置

DDNM属性值设置为需要匹配的板材结构Ref

TMRF属性值设置为SYTM符号模板的Ref

这样一个SLAB就创建了,为了更好的自动化,在上面思路的基础上,我们也利用PMl进行了客户端开发。

5.小结

利用PML创建的SLAB来标注船体结构,能够自定义模板,并且标注的信息与模型直接相关联。在使用也发现PML开发相比Vitesse对船体模型进行开发,具有更大的优势。其中,Vitesse读取一个船体信息需要使用Keyword,这种方式非常死板,深度开发的解决方案都不是很好。而利用PMl读取模型信息,就方便了许多许多。

目前,PML开发船体插件,实际使用还是比较少得。这和历史原因有关。但是随着科技的发展,已经船厂对数字化设计要求的提高。我相信基于PML语言的船体插件将被更多的开发出来。

AM中使用PML语言标注船体结构相关推荐

  1. UC 国际信息流推荐中的多语言内容理解

    导读:本次分享的题目是 UC 国际信息流推荐中的多语言内容理解,讲一下我们在国际信流推荐场景下的多语言内容理解方面的一些工作和思考,主要分为: 多语言内容理解的需求和挑战 多语言内容结构化信号建设方法 ...

  2. 开源:Angularjs示例--Sonar中项目使用语言分布图(CoffeeScript版)

    关于SonarLanguage是什么东东,这里就不在描述了,如果你对它感兴趣的话,请移步到上篇随笔开源:Angularjs示例--Sonar中项目使用语言分布图.这里是最近学习CoffeeScript ...

  3. python语言变量命名规则有什-以下选项中,符合Python语言变量命名规则的是_学小易找答案...

    [填空题]与文件系统相比,数据库系统的数据冗余度___________,数据共享性___________. [填空题]在数据库体系结构中,两级数据映象分别是指___________之间的数据映象与__ ...

  4. VB:使用Visual Studio 2010中的VB语言工具箱DataGridView调用SQL数据库Database的表格文件

    VB:使用Visual Studio 2010中的VB语言工具箱DataGridView调用SQL数据库Database的表格文件 目录 问题探究 图文教程 问题探究 使用Visual Studio ...

  5. 小结两种在Python中导入C语言扩展库的方法

    小结两种在Python中导入C语言扩展库的方法 分类: Pythoner2009-08-18 20:44 2563人阅读 评论(1) 收藏 举报 python扩展c语言importstring 一种是 ...

  6. java sql封装,在Java系统中封装SQL语言的处理方法及系统的制作方法

    在Java系统中封装SQL语言的处理方法及系统的制作方法[ 技术领域: ][0001]本发明涉及计算机数据处理 技术领域: ,特别是涉及一种在Java系统中封装SQL语言的处理方法及系统.[ 背景技术 ...

  7. python r语言 结合 部署_(转)python中调用R语言通过rpy2 进行交互安装配置详解...

    python中调用R语言通过rpy2 进行详解 1.R语言的安装: 大家进行R语言的安装,在安装好R后,需要配置环境变量R才能进行使用. 对此电脑右键->选择高级设置->环境变量-> ...

  8. 在 MFC SDI 程序中实现多语言程序界面

    下载: SdiML (34K,Visual C++ 6 项目) 今天举个例子,说说怎样使用 CLanguage 类,在 MFC SDI 程序中实现多语言程序界面. 因为 MFC 包装了一些字符串显示处 ...

  9. JSP2.0中的表达式语言(EL表达式)

    转载自   JSP2.0中的表达式语言(EL表达式) EL语法 EL的语法很简单,他最大的特点就是使用上很方便  例:  ${sessionScope.user.sex}  所有EL都是以${ 为起始 ...

  10. 中职升高职c语言程序设计教程课后答案,中职C语言教学创新与实践论文

    中职C语言教学创新与实践论文 摘要:自主学习体现了以学生为中心.以人为本的教学思想,是一种行之有效的教学方法,但中职学生自主学习能力整体比较欠缺,学生怕学.厌学现象严重,给教师的教学带来一定的难度.文 ...

最新文章

  1. 组件php53 php55区别,PHP53、54、55、56各版本重要更新简述(上)
  2. 网络连接、路由配置等
  3. svn update -r m path 代码还原到某个版本(这样之前的log日志也就没了,也就是清空log日志)...
  4. java stringbuffer原理_String,StringBuilder,StringBuffer 实现原理解析
  5. What every programmer needs to know about game networking
  6. 代码字体mono_如何构建代码存储库:Multi,Mono或Organic?
  7. web系统权限之数据权限
  8. Practical JAVA(三)关于final
  9. 【STM32】ADC库函数、一般步骤详解(实例:内部温度传感器实验)
  10. JavaScript实现视频播放器
  11. Python百日百行代码挑战-day8,day9,day10,游戏实战系列-五子棋
  12. 手机怎么更改html打开方式,安卓如何更改文件打开方式?
  13. 决策树——(一)决策树的思想
  14. LINQ教程一:LINQ简介
  15. 多伦多大学计算机科学选课,多伦多大学选课攻略 帮你彻底摆脱选课恐惧症!(内含福利)...
  16. Chapter 11 特征选择和稀疏学习
  17. day61-git版本控制工具
  18. 深圳Java培训:Lock线程锁
  19. STM32F103系列_串口Usart收发函数
  20. script标签的同步异步加载

热门文章

  1. fastDFS图片服务器的一些常见错误
  2. 股票交易接口的开发工具?
  3. python二级真题--共十二套--前六套--选择题
  4. mysql sql patindex_深入SQL截取字符串(substring与patindex)的详解
  5. 20级逍遥装备材料汇总及出处
  6. used in key specification without a key length
  7. 卡片游戏 (Throwing cards away I)(队列+模拟)
  8. bp神经网络算法的优缺点,基于bp的神经网络算法
  9. 创建图层-只是保存lyr,此路不通
  10. 你对“happen-before原则”的理解可能是错的?