这些函数有助于打印、保存和更新模型。
EbsScript 的自动打印对于为不同的状态创建一系列的文件尤其有用。
名称 |
目的 |
参数 |
返回值 |
例子 |
changeObjectName |
通过函数 changeObjectName,可以重新定义对象的名称。在这里,可以通过一个标志来控制如果所需的名称已经存在,该如何处理。 strNew:="Throttle_5"; changeObjectName("Throttle_3", strNew); 将 “Throttle_3“ 重命名为 “Throttle_5“,但前提是模型中还没有名为 "Throttle_5" 的对象。可以通过 changeObjectName 的返回代码看到重命名是否成功。 另外,也可以使用标志 "allowModify"(changeObjectName 的第三个参数): strNew:="Throttle_5"; changeObjectName("Throttle_3", strNew, true); 在这种情况下,如果可以实现重命名,调用后 strNew 包含之前名为 "Throttle_3" 的组件的名称,即 "Throttle_5",否则为 "Throttle_3"。 第四个参数 "checkOnly" 可以用来只检查是否可以重命名,而实际上并不重命名对象: strNew:="Throttle_5"; changeObjectName("Throttle_3", strNew, false, true); 如果重命名是可行的,但不改变对象的名称,则返回 true。 |
1: STRING: 当前名称 2: STRING: 新名称 3: BOOLEAN: allowModify-标志(见目的) 4: BOOLEAN: checkOnly-标志(见目的) |
BOOLEAN: |
见目的 |
getAllCompNames |
与 getCompNames 一样,但即使是那些在计算中被停用了的组件也会被返回。 |
1: INTEGER: 组件数量 2: STRING 数组: 组件名称字段 3: INTEGER: 移交字段的大小 4: BOOLEAN: 用于处理宏的标志: true: 下一级上下文对象被包括在内 false (默认): 只考虑当前的上下文 |
INTEGER: 发现的组件总数(其中只有大小与字段相符合的组件才会被显示) |
nCount:=getAllCompNames( 46, arstrMeasmNames, 1000); |
getAllPipeNames |
与 getPipeNames 一样,但即使是那些在计算中被停用了的管道也会被返回。 |
1: INTEGER: 管道类型(见下文) 2: STRING 数组: 用于管道名称的字段 3: INTEGER: 移交字段的大小 4: BOOLEAN: 用于处理宏的标志: true: 下一级上下文对象被包括在内 false (默认): 只考虑当前的上下文 |
INTEGER: 发现的管道总数(其中只有大小与字段相符合的管道才会被显示) |
nCount:=getAllPipeNames( 3, arstrNames, 100 ); |
getCalcState |
返回一个组件的计算状态,即一个组件是否包括在计算中,否则只作为一个被动图形使用 |
1: STRING |
INTEGER: |
iStatus:=getCalcState( "Boundary value" ); |
getCompNames |
有了这个函数,就可以在一个循环中一个接一个地处理这些组件。它返回一个包含所有类型的组件名称数组。该数组必须事先以合适的大小创建。 |
1: INTEGER: 组件数量 2: STRING 数组: 组件名称的字段 3: INTEGER: 移交字段的大小 4: BOOLEAN: 用于处理宏的标志: true: 下一级上下文对象被包括在内 false (默认): 只考虑当前的上下文 |
INTEGER: 发现的组件总数(其中只有符合字段大小的组件才会被显示) |
nCount:=getCompNames( 46, arstrMeasmNames, 200); |
getEbscriptOutpufilename |
返回 EbsScript 输出文件的路径。 |
- |
STRING: |
var begin str:=getEbsScriptOutputfilename; println (str); setEbsScriptOutputfilename str:=getEbsScriptOutputfilename; println (str);
if (getEbsScriptOutputfilenameAddTimestamp) begin println ("Timestamp will be added"); end; end; |
getEbscriptOutpufilename |
返回,EbsScript 输出文件是否附有时间戳。 |
- |
BOOLEAN: |
|
getModelEbsScriptOutputfilename |
返回模型特定的 EbsScript 输出文件的路径。 |
- |
STRING: |
getModelEbsScriptOutputfilename(); |
getObjects |
返回模型特定类型的所有对象 |
1: STRING: 要求的对象类型(类别) 2: BOOLEAN: false: 局限于当前上下文中的对象(默认设置) 3: BOOLEAN: false: 所有对象(默认设置) |
EBSOBJECT 数组: 要求的对象的数组 |
var are:array of ebsobject; i,n:integer; strName:string; begin are:=getObjects("ebscomp1"); n:=length(are); for i:=0 to n-1 do begin println (are[i]); end; end; |
getPipeNames |
通过这个函数,可以在一个循环中一个接一个地处理管道。它返回一个数组,其中包含某一类型的所有管道的名称(类型数量见下文)。该数组必须事先以合适的大小创建。 |
1: INTEGER: 管道 2: STRING 数组: 管道名称的字段 3: INTEGER: 移交字段的大小 4: BOOLEAN: 用于处理宏的标志: true: 下一级上下文对象被包括在内 false (默认): 只考虑当前的上下文 |
INTEGER: 发现的管道总数(其中只有大小与字段相符合的管道才会被显示) |
nCount:=getPipeNames( 3, |
getText |
返回在一个文本对象中输入的文本 |
1: STRING: |
STRING: |
strText:=getText( "Text object" ); |
getTextNames |
通过这个函数,可以在一个循环中一个接一个地处理文本字段。它返回一个包含所有文本字段(包括按钮和警报字段)名称的数组。该数组必须事先以合适的大小创建。 |
1: STRING 数组: 文本字段名称的字段
2: INTEGER: 移交字段的大小 3: BOOLEAN: 用于处理宏的标志: true: 下一级上下文对象被包括在内 false (默认): 只考虑当前的上下文 |
INTEGER: 发现的文本字段总数(其中只显示适合字段大小的数量) |
var begin |
getVisibleState |
返回一个对象的可见性状态,即一个对象在循环中是可见还是不可见 |
1: STRING: |
INTEGER: |
iStatus:=getVisibleState( "Boundary Value" ); |
printModel |
通过使用指定的布局,用默认的打印机设置打印模型。 |
1: STRING: 用于打印的布局名称(见打印预览,布局) 2: STRING: 打印机的名称(可选;当此条目为空时,使用默认打印机) 3: STRING: 在打印到文件的情况下:文件的名称(可选) |
BOOLEAN: |
printModel ("SmallFrameLandscape"); |
restoreModelVariables |
参见 saveModelVariables 和 saveProfileVariables |
1: INTEGER: 索引,应使用哪个存储集 2: BOOLEAN: false: 恢复后删除存储的数据 |
BOOLEAN: |
|
restoreProfileVariables |
1: INTEGER: 索引,应使用哪个存储集 2: BOOLEAN: false: 恢复到原始工况(默认设置) 3: BOOLEAN: false: 恢复后删除数据(默认设置) |
BOOLEAN: |
|
|
saveModel |
将模型的当前状态保存在硬盘上。 |
1: STRING: 文件名,包括路径(可选;如果为空,模型将被存储到之前的同一文件中)。 2:BOOLEAN: true: |
BOOLEAN: |
saveModel; |
saveModelVariables |
通过函数 saveModelVariables 和 saveProfileVariables,可以在内部将所有模型和工况变量的当前值存储在一个缓冲区中。用函数 restoreModelVariables 或 restoreProfileVariables,可以在之后的时间点恢复。 也可以在一个缓冲区中存储几个状态。为此,函数 saveModelVariables 和 saveProfileVariables 返回一个索引作为返回值,然后必须用还原-函数指定。 默认情况下,中间状态在恢复后被删除。然而,可以通过设置还原函数"keepEntryForFurtherRestores"的第二个参数为 "true" 来保存中间状态(以备以后需要再次恢复)。 |
- |
INTEGER: 恢复用的索引 |
|
saveProfileVariables |
- |
INTEGER: 恢复用的索引 |
|
|
setCalcState |
设置一个组件的计算状态,即一个组件是否包括在计算中,否则只作为一个被动图形使用。 |
1: STRING 2:INTEGER |
BOOLEAN: |
setCalcState( "Boundary Value", 1 ); |
setColor |
这个函数使设置一个对象(组件、管道、文本字段)的颜色成为可能。第三个可选参数 "colorIndex" 控制 "颜色1"-"颜色4"中的哪个颜色被改变: colorIndex = 0: 颜色 1 如果省略了 "colorIndex" 参数,颜色 1 将被改变。 颜色必须指定为格式为 $00bbggrr 的 RGB 值,其中 bb、gg、rr 可以分别从 0 到 $ff,表示蓝色、绿色或红色组件。 例子: $ 00ff0000 = 16711680 纯蓝 $ 0000ff00 = 65280 纯绿 另外,也可以指定标准调色板中的一种颜色。要做到这一点,请输入 $01000000 + 调色板索引的值。(这些对应于布局下属性栏中的标准颜色的值。) |
1: STRING 2: INTEGER 3: INTEGER: |
- |
setColor ("Boundary Value", $ 000000ff); // 将组件的背景颜色改为红色 setColor ("heliostat field", $ 00ffffc0, 1); // 将定日镜的颜色改为浅绿松石色 setColor ("heliostat field", 01000000); // 将定日镜的背景颜色改为调色板指数 0(黑色) setColor ("heliostat field", $ 01000001, 1); // 将定日镜的颜色改为色板指数 1(白色)
|
setEbscriptOutputfilename |
将 EbsScript 输出文件的路径设置为一个特定的路径,并决定是否在输出文件中附加一个时间戳。 |
1: STRING: 2:BOOLEAN |
|
setEbscriptOutputfilename("C:\\Temp\\Test", false); |
setModelEbsScriptOutputfilename |
将当前模型的 EbsScript 输出重定向到指定文件。其它模型的通用设置不被改变。 |
1: STRING: 请求的 EbsScript 输出文件的名称(包括路径) |
- |
setModelEbsScriptOutputfilename ("D:\\Temp\\EbsScript.txt"); |
setModelTime |
这个函数设置模型的时间。这通常是在从 EposInterface 或 EposArchive 接收数据时设置的,但如果需要,也可以明确地进行修改。 |
1: STRING: |
- |
setModelTime( "01.12.2004 16:30:00" ); |
setModelTime ForArchiveId |
此函数为特定的档案 ID 设置模型时间。 |
1: INTEGER: 2: STRING: |
- |
setModelTimeForArchiveId(300, "01.12.2004 16:30:00" ); |
setStandardColor |
此函数将对象的颜色重置为原始状态。 |
1: STRING: 2: INTEGER: |
- |
setStandardColor ( "Boundary Value" ); |
setText |
设置在文本对象中输入的文本 |
1: STRING: 2: STRING: |
- |
setText( "Text object", "This is a test text" ); |
setVisibleState |
设置一个对象的可见性状态,即隐藏该对象或显示该对象。 |
1: STRING: 2:INTEGER: |
- |
setVisibleState( "Boundary Value", 1); |
switchShiftView |
通过 switchShiftView 函数,可以将控制室的视图切换到一个特定的视图。 |
1: INTEGER: 请求的视图的索引 |
BOOLEAN: |
|
updateModel |
更新监视器屏幕上的显示。 |
1: BOOLEAN: 2: BOOLEAN: |
- |
|
与 "printModel" 不同,函数 "print" 和 "printToString" 不在打印机上产生输出,而只是在内部使用。可以在简单输入/输出函数和字符串函数两章中分别找到这些函数。
以下的 ID 是为管道类型定义的:
0 |
所有管道 |
1 |
空气 |
2 |
烟气 |
3 |
蒸汽 |
4 |
水 |
5 |
预期值 |
6 |
当前值 |
7 |
粗煤气 |
8 |
油 |
9 |
电力 |
10 |
机械轴 |
11 |
煤 |
12 |
气 |
13 |
逻辑 |
14 |
用户定义 |
15 |
两相流体气态 |
16 |
两相流体液态 |
17 |
盐水 |
18 |
通用流体 |
19 |
二元混合物 |
20 |
热液(油/熔化物) |
21 |
湿空气 |
22 |
NASA(美国国家航空航天局) |