catia知识工程专家语言
使用知识工程专家语言 (KWE)
有关知识工程语言的更多信息,请参见《知识工程顾问用户指南》中的“工程知识工程语言”。此页包含运行“知识工程专家 (Knowledge Expert)”应用程序时要使用的语言的相关信息。 在“知识工程专家 (Knowledge Expert)”中定义规则时,可以使用以下两种语言: KWE 语言 Visual Basic 语言
在“知识工程专家 (Knowledge Expert)”中定义检查时,可以使用以下三种语言:
KWE 语言
KWE 高级语言:知识工程专家 (KWE) 语言的延伸。此语言可使用局部变量,以及 if then else、for、while 控制结构。
您还可以填写成功和失败对象列表,生成报告时将使用此列表。 请注意,只能在创建检查时使用此语言。 Visual Basic 语言
声明变量
在“全部”字段中 在检查主体中 使用类型 使用类型属性 使用函数 使用语句
If 构造 If...Else 构造 If...Then...Else 构造while 构造 for 构造
声明变量
使用运算符
在“全部”字段中
在“全部 (For All)”字段中声明规则和检查变量。
有关此字段中要使用类型的更多信息,请参见定义类型。
请注意:
变量必须包含字母和/或数字。 变量名称无大小限制。
变量名称是区分大小写的字符串。
变量名称不能与单位名称冲突。要获取知识工程专家所支持单位的详尽列表,请参见“检查编辑器 (Check Editor)”/“规则编辑器 (Rule Editor)”中知识工程专家浏览器的“单位 (Units)”字段。
以数字 (2DCircle) 开始或包含特殊字符(+、- 等)的类型必须按以下方式写入:%2DCircle%,其中 % 是分隔符。
使用 KWE 语言时,可以通过 Thisrule 或 Thischeck 在检查主体或规则主体中声明自动引用变量。有关更多信息,请参见在检查主体中访问专家检查。
在检查主体中
临时变量可以通过 let 关键字声明。检查/规则执行结束后,临时变量不会持续作为参数。 let Mylist(List)
let childrenCheck(KWECheck) let i = 1
let condition = 0
Mylist = H.DirectChildren
for i while condition == 0 AND i <= Mylist.Size(){
childrenCheck = Mylist.GetItem(i)
if (http:// == "TargetCheck") {
ThisCheck.AddTupleFailed(childrenCheck) condition = 1 } else {
ThisCheck.AddTupleSucceeded(ChildrenCheck) }
}
使用类型
通过“对象浏览器 (Object Browser)”,可在“规则编辑器 (Rule Editor)”或“检查编辑器 (Check Editor)”中使用下述类型。
在“全部 (For all)”字段中,使用下列语法:type_identifier:type_name 其中 type_identifier 对应于要声明的变量,type_name 表示要声明的类型,可在“浏览器 (Browser)”中使用。
请注意,通过在“全部 (For all)”字段键入特征名称(类型)、在“检查编辑器 (Check Editor)”或“规则编辑器 (Rule Editor)”浏览器中选择名称(类型)、或在几何图形窗口或结构树中单击特征,您可以插入特征名称(类型)。
示例:
H:孔;S:盒体 Hl:孔;Sel:盒体
类型声明必须用分号分隔。
使用类型属性
您可以通过“规则编辑器 (Rule Editor)”或“检查编辑器 (Check Editor)”访问“对象浏览器 (Object Browser)”,从中选择下面描述的类型属性。
类型是可在检查主体或规则主体中键入或在对象浏览器中选择的分配属性。 若要使用对象浏览器:
在“知识工程专家 (Knowledge Expert)”工作台中,访问“规则编辑器 (Rule Editor)”/“检查编辑器 (Check Editor)”。 单击
或
图标,创建规则或检查,然后在“规则编辑器 (Rule Editor)”或“检查编辑器
图标。
(Check Editor)”中单击
在左侧窗口中单击要使用的包——在下图中为“零件设计 (PartDesign)”、类型——在下图中为“孔 (Hole)”和属性——在下图中为“直径 (Diameter)”,然后单击“关闭 (Close)”。
若要手动键入语句,请使用以下语法: type_identifier.object_name 示例:
使用函数
if H.Diameter > 10.0 then H.Activity = False
知识工程专家所支持的函数可在检查或规则主体中手动输入,或从对象浏览器中进行选择(请参见上述内容,了解如何访问浏览器)。
要显示各种方法,请选中“显示继承的属性 (Show Inherited Attributes)”框。 使用函数时,需要 > 运算符。
示例
(for all)Prod1:Product ; Prod2:Product
if Prod1 > Prod2 and ClashOrContact("Clash", Prod1,Prod2)
Message ("Products clashing are # and #", Prod1 > Name(),Prod2 > Name())
使用语句
您可在“规则编辑器 (Rule Editor)”或“检查编辑器 (Check Editor)”中使用下述控制结构。 任何 KWE 脚本都是由一系列语句组成的。语句可以是赋值语句、函数调用语句或条件语句,通常以分号结束,另外还可通过大括号括起一组语句,将其合成语句组。
If 构造
此构造中可以有条件执行代码段。请注意,“if”构造无法嵌套。 if(Hole.HoleType == "Simple") {
Hole.Diameter = 24mm; }
KWE 语句中支持 and 和 or。
若要在符合某个特定条件时执行一个语句,不符合条件时执行另一个语句,则请创建两个不同的规则或检查,即如何在其他语言中提供“else”功能。
if ... else ... else...if 构造
规则
if ... else ... else if
根据表达式的值有条件地执行一组语句。您可以使用下列语法: if condition statements [else elsestatements ]
或
if condition { statements }
[else if condition-n
[ { elseifstatements } ] ] . . . [else
[ { elsestatements } ] ]
对于简短的规则,可以使用单行形式(第一个语法),但是块形式(第二个语法)比单行形式提供了更多的结构和灵活性,并且通常更易于读取、维护和测试。
else 和 else if 子句都是可选子句。块 if 下可以有任意多个 else if 语句,但这些语句都不能出现在 else 子句之后。块 if 语句可以嵌套,即彼此包含。
检查
statement1 => statement2 (if statement1 then statement2)
每当满足 statement1 而 statement2 无效时都将显示消息(若类型为警告或信息),并在结构树中变为红色。
if ... then ... else
构造
if...then...else 构造仅适用于: 使用 KWE 高级语言创建的检查。 规则。在本示例中,使用 KWE 语言。
if then else 语句用于条件计算。else 语句是可选的。语句可以嵌套,即彼此包含。 H:Hole
if H.Diameter > 20mm
ThisCheck > AddTupleFailed(H) else
ThisCheck > AddTupleSucceeded(H)
while
构造
请注意,while 构造仅适用于:
使用 KWE 高级语言创建的检查。 规则。在本示例中,使用 KWE 语言。
若表达式判别为 true,则 while 循环用于执行语句。 let Mylist(List)
let childrenCheck(KWECheck) let i = 1
let condition = 0
相关推荐:
- [文秘资料]班长职务辞职报告
- [文秘资料]完美的辞职报告
- [文秘资料]经典的员工辞职报告
- [文秘资料]医院口腔医生辞职报告
- [文秘资料]总经理辞职报告范文四篇
- [文秘资料]超市职员个人辞职报告
- [文秘资料]村妇联主任的辞职报告
- [文秘资料]辞职报告书格式
- [文秘资料]酒店辞职报告简单范文
- [文秘资料]联通的辞职报告
- [文秘资料]2017最新私企员工辞职报告范文
- [文秘资料]2019年度医院基层党组织书记抓党建述职
- [文秘资料]工作时间长辞职报告
- [文秘资料]辞职报告怎么写出来
- [文秘资料]个人能力原因辞职报告
- [文秘资料]网络工程师辞职报告
- [文秘资料]项目部辞职报告
- [文秘资料]缝纫工辞职报告怎么写
- [文秘资料]XXX州委书记述职报告
- [文秘资料]抓基层党建工作述职报告
- (王虎应老师讲课记录)六爻理象思维
- 八个常见投影机故障排除法
- 质量专业综合知识(中级)第一章质量管理
- 煤矿班组建设实施意见
- 我国快餐业与肯德基经营模式的比较与分
- 汽车保险杠模具标准化模架技术工艺研究
- 汽车二级维护作业团体赛比赛规程
- 装卸搬运工安全操作规程
- 高效的工作方法-刘铁
- 依据《生产安全事故报告和调查处理条例
- 2015专业PS夜景亮化效果图制作教程
- 企业劳动定额定员浅析
- 中枢神经系统医学影像学本科五年制第五
- 长城汽车参观探营第三站:研发试验中心
- 小升初语文专项训练
- 建筑工程质量检测资质分类与等级标准
- 周燕珉-我国养老社区的发展现状与规划
- 《生命里最后的读书会》读后感
- 实验室管理评审报告
- CCNA思科网院教程精华之网络基础知识




