实体参量
下列的命令和存取变量在Flexsim中被用作实体引用。
变量current和item
• current - 变量current是当前资源实体的引用。通常可以是下拉菜单中的一个存取变量。
• Item - 变量item是某触发器或函数所涉及的临时实体引用。通常可以是下拉菜单中的一个存取变量。
引用命令
命令(参数列表) 说明 示例
first(node) 返回的是所传递的实体中排序第一的对象的引用 first(current)
last(node) 返回的是所传递的实体中排序倒数第一的对象的引用 last(current)
rank(node,ranknum) 返回的是所传递的实体中某给定排序的对象的引用 rank(current,3)
inobject(object,portnum) 返回的是与所传递的实体的输入端口号相连的对象的引用 inobject(current,1)
outobject(object,portnum) 返回的是与所传递的实体的输出端口号相连的对象的引用 outobject(current,1)
centerobject(object,portnum) 返回的是与所传递的实体的中间端口号相连的对象的引用 centerobject(current,1)
next(node) 返回的是所传递的实体中排序下一个对象的引用 next(item)
实体属性
命令(参数列表) 说明
getname( object ) 返回实体的名称
setname( object, name ) 设定实体的名称
getitemtype( object ) 返回实体中临时实体类型的值
setitemtype( object, num) 设定实体中临时实体类型的值
setcolor( object, red, green, blue ) 设定实体的颜色
colorred( object ) blue,green,white... 设定实体的颜色为红、蓝、绿、白等
setobjectshapeindex ( object , indexnum ) 设定实体的3D形状
setobjecttextureindex ( object , indexnum ) 设定实体的3D纹理
setobjectimageindex ( object , indexnum ) 设定实体的2D 纹理,通常只在平面视图中使用
实体空间属性
命令(参数列表) 说明
xloc( object ) yloc( object ) zloc( object ) 这些命令返回实体x、y、z轴向的位置
setloc( object, xnum, ynum, znum ) 此命令设定实体x、y、z轴向的位置
xsize( object ) ysize( object ) zsize( object ) 这些命令返回实体x、y、z轴向的尺寸大小
setsize( object, xnum, ynum, znum ) 此命令设定实体x、y、z轴向的尺寸大小
xrot( object ) yrot( object ) zrot( object ) 这些命令返回实体围绕x、y、z轴向的旋转角度
setrot( object, xdeg, ydeg, zdeg ) 此命令设定实体围绕x、y、z轴向的旋转角度
实体统计值
命令(参数列表) 说明
content( object ) 返回实体当前数量
getinput( object ) 返回实体的输入统计
getoutput( object ) 返回实体的输出统计
setstate( object, statenum ) 设定实体的当前状态
getstatenum( object ) 返回实体的当前状态
getstatestr( object ) 以字符串返回实体当前状态
getrank( object ) 返回实体的排序
setrank( object,ranknum ) 设定实体的排序
getentrytime( object ) 返回实体进入到当前所在实体中的时刻
getcreationtime( object ) 返回实体的创建时刻
实体标签
命令(参数列表) 说明
getlabelnum( object, labelname ) getlabelnum( object, labelrank) 返回实体的标签值
setlabelnum( object, labelname , value ) setlabelnum( object, labelrank , value ) 设定实体的标签值
getlabelstr( object, labelname ) 获得实体标签的字符串值
setlabelstr( object, labelname , value ) setlabelstr( object, labelrank , value ) 设定实体标签的字符串值
label( object, labelname ) label(object, labelrank) 返回一个作为节点的标签的引用,此命令常用在把标签当作一个表来使用的情况下。
表
命令(参数列表) 说明
gettablenum( tablename / tablenode / tablerank, rownum, colnum ) 返回表中特定行列的值
settablenum( tablename / tablenode / tablerank, rownum, colnum, value) 设定表中特定行列的值
gettablestr( tablename / tablenode / tablerank, rownum, colnum ) 返回表中特定行列的字符串值
settablestr( tablename / tablenode / tablerank, rownum, colnum, value) 设定表中特定行列的字符串值
settablesize( tablename / tablenode / tablerank, rows, columns ) 设定表的行列数大小
gettablerows( tablename / tablenode / tablerank) 返回表的行数
gettablecols( tablename / tablenode / tablerank) 返回表的列数
clearglobaltable( tablename / tablenode / tablerank) 将表中所有数字值设为0
实体控制
命令(参数列表)) 说明
closeinput( object ) 关闭实体的输入端口
openinput( object ) 重新打开实体的输入端口
closeoutput( object ) 关闭实体的输出端口
openoutput( object ) 重新打开实体的输出端口
sendmessage( toobject, fromobject, parameter1, parameter2, parameter3 ) 触发实体的消息触发器
senddelayedmessage( toobject, delaytime, fromobject, parameter1, parameter2, parameter3 ) 在一段特定时间延迟后触发实体的消息触发器
stopobject( object, downstate ) 无论实体在进行什么操作,都令其停止,并进入指定的状态
resumeobject( object ) 使实体恢复其原来的无论什么操作
stopoutput( object ) 关闭实体的输出端口,并累计停止输出的请求
resumeoutput( object ) 在所有停止输出请求都恢复以后,打开实体的输出端口
stopinput( object ) 关闭实体的输入端口,并累计停止输入的请求
resumeinput( object ) 在所有停止输入请求都恢复以后,打开实体的输入端口
insertcopy( originalobject, containerobject ) 往容器里插入新的实体复制品
moveobject( object, containerobject ) 将实体从当前容器移到它的新容器中
高级函数
实体变量
命令(参数列表) 说明
getvarnum( object, “variablename” ) 返回给定名称的变量的数值
setvarnum( object, “variablename” , value ) 设定给定名称的变量数值
getvarstr( object, “variablename” ) 返回给定名称的变量的字符串值
setvarstr( object, “variablename” , string ) 设定给定名称的变量的字符串值
getvarnode( object, “variablename” ) 返回一个节点,作为指向给定名称的变量的引用
任务执行器控制
参见任务序列,可以获得更多有关控制任务执行器的信息。
提示和界面输出
命令(参数列表) 说明
pt( text string ) 向输出控制台打印文本
pf( float value ) 向输出控制台打印浮点数值
pd( discrete value ) 向输出控制台打印整数数值
pr( ) 在输出控制台中建新的一行
msg( “title”, “caption” ) 打开一个简单的“ 是、否、取消”消息框
userinput( targetnode, “prompt” ) 打开一个可以设定模型节点值的对话框
concat( string1, string2, etc. ) 合并两个或多个字符串
更多高级函数
下面是可能使用到的更多高级函数。这里没有提供参数列表,参见命令集可获得更多信息。
节点命令 - node(), nodeadddata(), getdatatype(), nodetopath(), nodeinsertinto(), nodeinsertafter(), getnodename(), setnodename(), getnodenum(), getnodestr(), setnodenum(), setnodestr(), inc();
数据交换命令 - stringtonum(), numtostring(), tonum(), tonode(), apchar();
节点表命令 - setsize(), cellrc(), nrows(), ncols();
模型运行命令 - cmdcompile(), resetmodel(), go(), stop();
3D个性化绘制代码命令 - drawtomodelscale(), drawtoobjectscale(), drawsphere(), drawcube(), drawcylinder(), drawcolumn(), drawdisk(), drawobject(), drawtext(), drawrectangle(), drawline(), spacerotate(), spacetranslate(), spacescale();
Excel命令 - excellaunch(), excelopen(), excelsetsheet(), excelreadnum(), excelreadstr(), excelwritenum(), excelwritestr(), excelimportnode(), excelimporttable(), excelclose(), excelquit();
ODBC命令 - dbopen(), dbclose(), dbsqlquery(), dbchangetable(), dbgetmetrics(), dbgetfieldname(), dbgetnumrows(), dbgetnumcols(), dbgettablecell(), dbsettablecell();
运动学命令 - initkinematics(), addkinematic(), getkinematics(), updatekinematics(), printkinematics() |