PDMS二次开发(一)——PML类型程序类型与概念

前言

PDMS二次开发需要.net 有自带的PML语言和C#
.net一般通常泛指的是C#语言
模型数据借助.NET的接口可以转换成数据库中的关系型数据,将固化在PDMS软件中的工程数据,转移到更广阔的应用领域。

.NET二次开发的两种方式。一种是使用.NET插件;另一种是使用PML.NET。两种方式的机制都可以使用程序被动态加载到使用的模块中。我采用的是纯.NET开发的方式,熟悉PML的人可能更喜欢PML.NET的方式。

编辑器的话 PML 可以用

1677055795925.png

1677055819989.png

一、PML类型与概念

PML是面向对象的一种编程语言,支持用户自定义对象类型,是一种简单易学,与PDMS无缝链接的一种语言

1677055877303.png
常用的是pmllib
要做的项目简介:

1677055931343.png

1677066204119.png

image.png

基础知识

变量

! 用来声明变量 一般不在命令行窗口来写 要自己写一个脚本用来执行
!number = 9 q var !number
答案: <REAL> 9
!number = object real()
q val !number

PML里面的变量是不区分大小写的
unset指的是空类型 相当于null
1677066750034.png

1677066846892.png
real中对比java的话 里面包括Double和int float 都属于real类型

Array数组类型里面 可以放String real 等不局限于一种类型

1677066871853.png

1677067559864.png

1677067888433.png

1677067992842.png
!!ce指的是当前元素

1677068057271.png

1677068104242.png

函数

1677068791605.png

函数的定义 !!Area函数 里面是参数 然后最右面是返回值 感觉和go语言的差不多

1677068917347.png

需要注意的是函数的名称要和定义的这个函数的文件名称要一致
1677069009778.png

输入的是8*5 然后再进行查询之后得出的结果
1677069042940.png

目前的演示都是再CommandWindow窗口程序里看到的

小例子

1677069276588.png
先定义两个小零件
然后编写函数

1677069427103.png
就是根据程序重新命名了一下
然后执行
pml rehash all
!!NameNozzle()
就可以了
结果:

1677069508868.png

注释

1677069834515.png
--不可以放在代码的同行后面
1677069883001.png
打印就是Log日志 在控制台输出的那种

PML表达式

1677116714477.png
和并符&:就是两个字符拼接在一起所用的
如果都是字符串的话 也可以用+

条件判断语句

1677116440427.png

循环

1677116470833.png

skip和break

就是类似continue 和break

1677116491728.png

类似goto

1677116550653.png

1677116610993.png

窗口程序

1677117807654.png
下面是最终版本的get函数

1677129394356.png
这个是声明了一个窗体程序

setup form

exit

而下面define method .PipeBop() 那个是构造方法
在下面是普通的方法
method里面常与object对象这种相结合
text .txtBop 'BOP' at x 1.1 ymax width 20 is real
.txtBop 是声明文本框的名称名
'BOP’表示的是在屏幕上显示的名称
这个是以左上角为原点坐标
出来的效果就是

1677118398503.png
然后再加入一些方法 点击出来的按钮
其中flnn 这个是指的是零件的名称
当form里面的改变 或者增加方法什么的才需要刷新 否则就单纯更改方法里面的代码就不需要更新
这里面定义的就是PML中的Object类 按F1快捷键
1677120384806.png
Gadget是控件

1677120638819.png
就是让窗口的控件变灰 直接失灵 Active= false
neq是非的意思

1677121500861.png
ID@是让你点击界面的确认 element

1677128532271.png
循环点击 设置set函数
esc退出

Indices遍历集合

1677129094801.png

dbref : 指的是pdms库里面的元素类型

1677129558606.png

最终版:

1677129691599.png

在PDMS菜单栏中添加程序

1677130022246.png
右键出现的Customize然后出现工具
在中间的部分右键新建 然后最右边的栏中进行编辑 注意是Mcro形式 因为我们这个本质上是宏命令

1677130138089.png
最后的时候一定要记得 把按钮拖进去 要不还是失效的

1677130207941.png
如果txt文件中执行的话(这里面txt文件中仅仅有一个查询的一条语句)
1677130291705.png
或者也可以通过按钮工具的形式出现

1677130379647.png

1677130495763.png

窗口自动定位

1677131303176.png

1677131536832.png

1677131575729.png

1677131618439.png

也可以组合

1677131984161.png

1677132199262.png

1677132355641.png
构造方法只运行一次就够了 初始化完成 是每次重新打开都会

1677132464322.png

1677132539552.png
就是常见的OK键和cancel键

1677132617438.png

PML常见控件

1677131679000.png
tooltip 'Slect pipe’这个是窗口停靠的提示信息
1677131723121.png

1677133403738.png

1677133445170.png

猜你喜欢

转载自blog.csdn.net/qq_41810415/article/details/129165814