语法
sheet.SetCell(IndexRow:Integer, IndexColumn:Integer, CellValue:Literal):Void
LocateInRow()
适用于设计表图纸。返回包含指定值的第一行的索引。如果未找到该值或没有正确指定该方法的 参数,则返回 0。
语法
sheet.LocateInRow(rowIndex:Integer, value:Literal) :Integer
LocateInRow 方法具有两个参数:
参数 RowNumber Value
描述 必选。表中行的编号或索引。从 1 到 n 的整数。 必选。搜索的值。可以为字符串或布尔值
Sheet.CloserConfig()
该方法使您可以根据混合大于(或等于)和小于(或等于)条件找到设计表的最接近配置。
其中:
columnName
<
,
<=
,
>
,
>=
,
==
,
!=
value
== 或
!=
或
,将采用
!= 时使用该方法)。如果 sortmethod 不是 。
==
==
21
示例:
Sheet.CloserConfig(
column1 column3
, ,
< !=
, 10mm, ,
column2 standard
,
>= 下:
, 20deg, )可以解释如
找到满足以下条件的配置:
column1 中的值必须小于 10mm, column2 中的值大于或等于 20deg column3 中的值与标准字符串不同。
请注意:
如果多个配置有效,将找出与
界限 值最接近的配置。如果仍然有多个配置有效,
则返回第一个有效值。 如果没有有效
配置,则返回 0。
8、关键字
if...else else... if inside ... let
for set
while
使用布尔值参数 true 和 false 时,须确保使用这些值的英文形式。不要使用本国语言中 与 true 和 false 等效的词汇。
if...else ... else...if
规则
if ... else ... else if
根据表达式的值有条件地执行一组语句。或者可以使用块成型语法:
if condition statements [else elsestatements ]
or
if condition { statements } [else if condition-n [ { elseifstatements } ] ] . . . [else 22
[ { elsestatements } ] ] 对于简短的规则,可以使用单
行成型(第一个语法)。但是块成型(第二个语法)比单 行语句提供了更多的结构和灵活性,并且通常更易于读取、维护和测试。
else 和 else if 子句都是可选子句。可以在块 if 下有多个 else if 语句,但它们都 不能出现在 else 子句后面。块 if 语句可以彼此嵌套(即包含)。
检查
检查只能读取参数。因此,不能在输出中使用具有自变量的函数。 Relations Formula.1 Activity ==
false
检查可使用特定的关键字 =>。statement1 => statement2 (if statement1 then
statement2)。
每次 statement1 满足而 statement2 无效时都将显示消息(如果类型是警告或信息)并在
结构树中变为红色。
OK => KO KO => KO KO => OK OK => OK
For 语句
请注意,For 语句只能用于动作脚本和反应脚本。
For 关键字的第一种用法是基于列表中元素的循环。请参见旁边 et List.1(List) 的语法。 let x(Point) 其中:
For x inside List { x 是变量名(类型给定。它可以表示一个对象或一个值)。
Body if (x <> x 可以在几何体中使用(与语言的其它变量一样)。它包 NULL) 含与当前迭代相对应的列表中的元素。
} 列表是类型列表的变量名或返回列表的表达式。
23
几何体将执行 N 次,其中 N 是列表中元素的数量。
For 关键字的第二种用法是执行循环,直到某个表达式为 false。 For x while predicate 请参见旁边的语法。 {
其中:
} Body
x 是整数类型的变量名。它在每次执行几何体后都会渐 增。 谓词是布尔表达式。只要此表达式为 true,就会执行主 体。此表达式在几何体前赋值。
请注意,For 运算符的第二种用法可能导致无限循环。
While 语句
此循环在表达式变为 false 前一直执行。请参见旁边的语法。 let i = 1 let x(Point) 其中: for i i 是整数类型的变量名。它在每次执行几何体后都会 i<=parameter.Size() 渐增。 { X 是点的变量。
while x = parameter.GetItem(i) if (x.GetAttributeReal(\0.04) x.SetAttributeReal(\}
let
使用 let 关键字可在脚本开头声明临时变量。规则执行结束后,临时变量不会持续作为参数。
/*Rule created by CRE 08/23/99*/ let x = 5 mm
if PartBody
Hole.1 Diameter > x {
PartBody Hole.1 Activity = false 24
}
对于非数字值,必须指定类型:
let S(Surface) S= split (...,...)
临时变量应在指定任何条件指令前在规则开头声明。
let S1(Surface) let S2(Surface) let S3(Surface)
S1 = Split ... S2 = ...
S3 = ...
set
如果要操作类型,可以使用 set 关键字来设置此类型的变量并直接键入属性来读取和/或写入它 的特性。
/*You can start from an object in a variable x and want to manipulate it as a Hole. To do so, use the set keyword to indicate that you want to manipulate the object as a Hole*/ let y(Hole) set y = x
if (y <> NULL) Message ( Hole diameter is # ,y.Diameter) 评价方法
允许您计算法则曲线是知识工程顾问法则曲线还是创成式外形设计法则曲线,并允许在另一个法 则曲线内使用结果数据。
语法 law.Evaluate(Real):Real
其中,参数为应用法则曲线的参数。 25