tribon二次开发介绍.doc_第1页
tribon二次开发介绍.doc_第2页
tribon二次开发介绍.doc_第3页
tribon二次开发介绍.doc_第4页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

Tribon二次开发二次开发主要可用于友好界面,快速建零件(元件)的模型,自动出图,以及与其他软件交互数据。虽然tribon的数据库不开放,但它提供了很多text文件与其数据库交互的方法,我们可以利用编程处理数据生成text文件,来间接写入或更新tribon数据库;通过导出text文件然后解析来读取数据库,或者利用Data Extraction 工具抽取数据来达到读数据库的目的。而其提供的各种API函数也能很容易实现删除数据功能。所以我们可以写一些程序来封装这些过程,即在现有Tribon API基础上再做一些API,从而使我们的操作更容易。例如我们可以写一个component类,定义一个set()函数用来设定参数,然后定义一个createcomponent()函数来在tribon里创建component,它所做的事情就是将参数转化成tribon规定的text文件格式,然后用python运行su016.exe将text文件读到Tribon数据库中生成component。这样就能很方便实现写入或更新component库的操作过程。然后我们将管子,弯头,阀等零件定义为component的子类(因为它们本身就是component,我们编程要与实际尽量一致,这样就很容易理解和维护代码),接下来我们查询管子,弯头,阀等零件的标准,看其提供了哪些参数,我们要将该零件类的参数定义与其标准提供的参数完全一样,然后定义一个set()函数将参数转化为component里的参数即可。这样我们便实现了将数据自动转化为tribon component库的component。因此标准和厂家提供的基本零件的数据文件很关键,如果比如某种零件以统一的形式以一种程序能读写的数据格式(如xml,excel或word表格)发布的话,我们只要运行程序即可将数据转化为各种软件的三维零件或图形。这会减少大量的基本零件库的创建维护工作,而且各个船厂设计所之间可以很容易实现共享这种基本零件的数据。Tribon 二次开发的资料主要时其自身的帮助文件和vitesse training book(这两个资料内容其实差不多。入门看training book会觉得条理更清楚点,示例代码简洁。Tribon的DeveloperToolkit帮助是写程序时经常要查的API帮助,她自带的example代码太乱了,很简单的功能经常写很多代码,偶尔也可以参考一下某些函数的实现)。1.界面友好开发:对所有常用键设置快捷键,为自己的二次开发增加菜单或一些工具栏方便操作。2.管子开发(piping &ventilation modelling):2.1零件开发:Component, Volume, Equipment开发。使用Tribon提供的API实现将标准里的数据表自动导入生成Tribon中的component, volume 和equipment.实现自动生成Component:利用原始数据生成tribon要求的文本文件(其格式要求见帮助outfittingcomponentsuse of textfile),然后用python自动运行TribonM3Binsu016.exe将text文件读到Tribon数据库中生成component。实现自动生成volume:根据零件的参数和几何特征,利用tribon提供的基本三维体拼接而成。(可以简单封装一下tribon提供的基本几何体API使之与vpython的一样好用) 由于volume模块未提供创建曲面的API,tribon自身是用宏语言实现的,我们创建一个bat文件和一个数据文件然后执行bat文件即可调用sz006.exe创建,这两个文件的格式请点击该连接查看。(我按照这两个文件格式做了,虽然能建出来,但是有点问题。不太清楚它要求的具体格式,创建的过程实际上是tribon用宏语言写的,我只是调用了它而已。) 实现自动生成Equipment: 根据tribon提供的equipment函数实现。当零件多了,需利用面向对象的继承重复利用代码,而且应尽量与实际情况一致以保证程序的可读性和维护性。2.2全自动出小票实现过程: 1.从图中抽取相关数据填入EXCEL模版中然后打印得到pdf格式的封面,托盘表。(数据抽取参考帮助DeveloperToolkitData ExtractionDrafting Keywords and Pipe Keywords)2.自动打印小票:参考帮助DeveloperToolkitTribon Print Server3.制作成一个pdf:合并封面,托盘表和小票文件成一个pdf文件,得到内场,外场和开孔图。(参考免费的api:pyPdf-1.9) 3.硒装开发(structure modelling):3.1 自动生成component和volume。实现过程与管子的完全一样。3.2 自动生成structure: 利用tribon提供的API自动拼凑得到梯子,内硒等structure模型。原理与自动制作Volume一样。3.3 自动出图:利用drafting模块的API建图,插入模型,然后抽取制作材料表的相关数据,整理数据,然后利用drafting的API向图形中画表格并写入数据,然后在立体图中加入position number。 (尺寸标注不知道怎么实现,不知道怎么判断那些尺寸要标.图形削隐的API也没找到)4与其他软件交互数据:1Components库的维护:批量抽取导出,然后在EXCEL,MSSQL等数据库中编辑,然后导入tribon中。2Placed Volume数据可在structuretoolsvolumeexport to xml批量导出,可以方便从draftingvolumeimportvrml中导入3dmax,blender等流行三维软件的vrml格式的模型,从这个功能我们可以将设备的模型建在3dmax中,这样方便创建修改维护。3利用sz024.exe可以将模型数据导出到text文件,再用到其他软件中。做Tribon的二次开发,python的操作能力很关键。一位大牛整理的python资源里提到的好东西很多。下面推荐一些我认为比较好且经常看的一些python资源:工具:eclipse+pydev , notepad+(自带的python GUI 和 Pythonwin也很好,pythonwin中就有断点调试了)网站:啄木鸟社区,灵蛇网 , showmedo , vaults of parnassus入门书籍:Python简明教程 , python_note_wcy 中级开发类:dive in python,PythonStandardLib ,python 自己的帮助文本文件分析:Text Processing in Python(啄木鸟上有几章中文版的)Xml文件读写:w3cshool , Python And Xml(个人觉得这本书写的很好,第四章对我的影响比较大)常用到的office API:Python Programming On Win32,根据需要可以仿easyexcel写出easyword,easyaccess(当然也可用adoapi操作acess)和easyoutlook(python自带的类库也能方便处理邮件)。其中需要参考office vba二次开发对象模型,有一些office vba开发经验的会更容易。常用数据库api:adodbapi(由于tribon的限制用python2.3,我的机器上decimal模块导入不进去,后来在python2.5中考的decimal模块并改了两处语法上的差异就好了。连接字符串参考该网页,不同版本的数据库连接字符串有些差异,要多试一试。Python Database API Specification 中文版)界面:wxpython in actionPython不仅优雅简洁,而且还有很多免费的第三方软件包用来扩展她的功能,几乎可以满足我们需要的任何事情: 中文字码:cjkpyghon(python2.3必装)Pdf API:reportlab,pypdf(这两个都有些局限,java的itext功能很强大,可以对pdf做任何事情, 参考书籍itext in action)打包python为exe文件:py2exe三维API:vpython, pyopengl (可以简单封装一下tribon提供的Volume基本几何体API使之与vpython的一样好用)50个能够满足所有需要的模块高级类:Think in pythonTribon 一些小技巧:1. 鼠标默认颜色设置为白色:D065 SB-REF-COL 变量2. volume 默认颜色设置:SBD-DEF1中设置变量。参考(帮助A1.8.11)volume properties3. volume第一个connection方向需定义在x轴正向上。4. 较复杂设备volume应该用3dmax(或blender它们建模的功能相当好用)制作,然后通过vrml2.0格式导入tribon中。小的零件建议写程序自动生成。这样会大大节省创建和维护时间。5. 矩形分管开

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论