100字范文,内容丰富有趣,生活中的好帮手!
100字范文 > Polyworks脚本开发学习笔记(五)-变量使用基本语法

Polyworks脚本开发学习笔记(五)-变量使用基本语法

时间:2020-10-29 19:19:08

相关推荐

Polyworks脚本开发学习笔记(五)-变量使用基本语法

Polyworks脚本开发学习笔记(五)-变量使用基本语法

定义变量及赋值

定义各种类型的变量

定义变量时,只需要使用DECLARE 关键字即可定义,为了区别变量和脚本中的其它字符,建议都以小写v开头并取容易区别的名称。如定义变量 DECLARE vNum 1,使用$取变量值,可在查看变量时使用MACRO ECHO ( $vNum ) ,可看到结果为1。

DECLARE vNum 定义一个数字变量

DECLARE vNum 1 定义vNum为1

DECLARE vDoub 3.14 定义vDoub 为3.14

DECLARE vNumA 1

DECLARE vNumB $vNumA 定义vNumB 为vNumA的值

DECLARE vStr “Hello” 定义一个字符串变量为Hello

DECLARE vArr {1,2,3} 定义一个数字数组{1,2,3}

先声明后定义一个数组

DECLARE vArry

SET vArry {1,2,3}

MACRO ECHO ( $vArry ) 结果为 1 2 3

SET vArry[3] 100

MACRO ECHO ( $vArry ) 结果为 1 2 100

获取数组的长度 SIZE ( $vArry )

MACRO ECHO (SIZE(vArry)) 结果为3

字符串常规保留字符使用

Polyworks脚本中除了系统关键字以外,还有以下几个保留字符

可用以上保留字符组建字符串,例如:

DECLARE vPtInd 24DECLARE vPtName "点$vPtInd" 或者 DECLARE vPtName "点${vPtInd}"MACRO ECHO ($vPtName)

结果为 点24 ,这个方法适用于给特征命名

使用$可以在编辑器中唤出保留字符如换行符,TAB,引号等

DECLARE vStr "我是张三${_NEWLINE}我来自中国,打招呼:${_TAB}${_QUOTES}你好${_QUOTES}"MACRO ECHO ( $vStr )

结果如下:

我是张三

我来自中国,打招呼: “你好”

系统保留变量的使用

还有其它系统保留字符如下,可获取各种系统变量值,使用如:

DECLARE vTempStr "安装路径 $_INSTALL_PATH"MACRO ECHO ( $vTempStr )

结果:安装路径 C:\Program Files\InnovMetric\PolyWorks MS

DECLARE vTempStr "圆周率 ${_PI}"MACRO ECHO ( $vTempStr )

结果:圆周率 3.14159

DECLARE vTempStr "当前项目路径 ${_PWK_FILES_PATH}"MACRO ECHO ( $vTempStr )

结果:当前项目路径 C:\Users\Administrator\Documents\PolyWorks\工作区 1_Files

DECLARE vTempStr "临时路径 ${_TEMP_PATH}"MACRO ECHO ( $vTempStr )

结果:临时路径 C:\Users\Administrator\AppData\Local\Temp\imtmp

DECLARE vTempStr "用户设置路径 ${_USERCONFIG_PATH}"MACRO ECHO ( $vTempStr )

结果:用户设置路径 C:\Users\Administrator.innovmetric.19

字符串变量的组合使用方法

在字符串变量后接:L或:l 将英文字符串转为小写 (L/l代表lower)

在字符串变量后接:U或:u 将英文字符串转为小写 (U/u代表upper)

DECLARE vStr "China"MACRO ECHO ( "China中国的结果小写是:${vStr:L}" )MACRO ECHO ( "China中国的结果大写是:${vStr:U}" )

在文件名字符串变量后接:e 获取文件名扩展符如txt

DECLARE vFileName "c:\abc11.txt"MACRO ECHO ( "${vFileName}的文件名后缀是${vFileName:e}")

显示结果: c:\abc11.txt的文件名后缀是txt

在文件名字符串变量后接:h 获取文件夹路径

DECLARE vFileName "c:\temp\abc11.txt"MACRO ECHO ( "${vFileName}的文件夹路径是${vFileName:h}")

显示结果: c:\temp\abc11.txt的文件夹路径是c:\temp

在文件名字符串变量后接:r 获取除文件名后缀之外的全称

DECLARE vFileName "c:\temp\abc11.txt"MACRO ECHO ( "${vFileName}的除文件名后缀之外的全称是${vFileName:r}")

显示结果: c:\temp\abc11.txt的除文件名后缀之外的全称是c:\temp\abc11

在文件名字符串变量后接:t 获取文件名称加后缀

DECLARE vFileName "c:\temp\abc11.txt"MACRO ECHO ( "${vFileName}文件名称加后缀是${vFileName:t}")

显示结果: c:\temp\abc11.txt文件名称加后缀是abc11.txt

变量的计算

自增或自减

DECLARE vNum 1++vNumMACRO ECHO ( $vNum )

结果vNum自增1,值变为2

DECLARE vNum 9--vNumMACRO ECHO ( $vNum )

结果vNum自减1,值变为8

2. 使用表达式,EXPR返回原始类型值,EXPR_I返回值会取整

DECLARE vRadius 9DECLARE vPerimeterDECLARE vArea#圆周长vPerimeter = 2 π r ,面积是vArea = π*r*rSET vPerimeter EXPR (2*$_PI*$vRadius)SET vArea EXPR ($_PI*$vRadius*$vRadius)MACRO ECHO ( "圆的半径是${vRadius}${_NEWLINE},周长是${vPerimeter},${_NEWLINE}面积是$vArea")

显示结果

圆的半径是9

周长是56.5487,

面积是254.469

3. 使用函数

例如,输入一个角度,利用函数求SIN值

#求sin45°值,但系统sin函数要求输入弧度,1弧度(rad)=1°*π/180

DECLARE vAngle 45DECLARE vRad EXPR($vAngle *$_PI /180) 将角度转换为弧度DECLARE vRes EXPR(sin ($vRad) ) 求SIN弧度值MACRO ECHO ( "SIN45°的结果是:${vRes}" ) 输出结果

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。