全球FlexSim系统仿真中文论坛

搜索
查看: 12170|回复: 9
打印 上一主题 下一主题

函数库

[复制链接]
跳转到指定楼层
1#
wj109260758 发表于 2010-7-15 00:13:28 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
实体参量& s3 r- C7 P4 V; k9 V
下列的命令和存取变量在Flexsim中被用作实体引用。
3 H4 r8 F. D( G4 ~" ^变量current和item! P$ B! I& c+ A* O+ x
•        current - 变量current是当前资源实体的引用。通常可以是下拉菜单中的一个存取变量。 & L+ M+ b7 I; L1 O6 V, j) |1 U
•        Item - 变量item是某触发器或函数所涉及的临时实体引用。通常可以是下拉菜单中的一个存取变量。
6 k5 u1 c$ O" v9 C! x, v7 @& e- U引用命令" f9 y3 q, @" a2 u* S6 S+ y, }. V& T
命令(参数列表)        说明        示例
: j6 U/ i7 j4 x$ U3 q" U+ Pfirst(node)        返回的是所传递的实体中排序第一的对象的引用        first(current)3 M* Z7 p5 A* V8 b
last(node)        返回的是所传递的实体中排序倒数第一的对象的引用        last(current)( H' Y/ n+ g* D$ P( x4 e: R) k, k
rank(node,ranknum)        返回的是所传递的实体中某给定排序的对象的引用        rank(current,3)9 d7 v' {$ V8 Q  e1 }
inobject(object,portnum)        返回的是与所传递的实体的输入端口号相连的对象的引用        inobject(current,1)* J, A# d$ `1 N$ V
outobject(object,portnum)        返回的是与所传递的实体的输出端口号相连的对象的引用        outobject(current,1)' o- o3 o5 V9 w
centerobject(object,portnum)        返回的是与所传递的实体的中间端口号相连的对象的引用        centerobject(current,1)* B% J4 O6 w) w( j2 x
next(node)        返回的是所传递的实体中排序下一个对象的引用        next(item)
% s8 z8 ]) E: G4 z1 {
  p8 y' N0 p( k" Y
. L% P( j5 H: ^
3 Q2 x4 g6 C- e8 H. S9 M" b
3 _$ _3 P: k) m% _& s0 C, m: l
  J9 ?6 \1 N3 y; ^5 T0 K" b: C; f# K5 Y" u6 D$ W  S4 r5 s# @

* i7 M4 O) `; V6 d6 V0 h- G
# |: q; o+ P" h2 p( ^: |
+ d* ?& y/ J' G4 q% H1 _8 o! K) V
. M" Z2 N) z. j; {1 k  Z' h6 z& M& p

9 l$ r; L8 @5 @/ Y
9 Z- q/ ~' C# i
  X: g+ U* v; e
2 D# [8 g% i4 k1 u  c5 P0 C; e, C0 G' }( ]  W3 m
实体属性
& w9 h. Q. q% ^3 W+ \# H命令(参数列表)        说明
8 F7 Q4 Z& P6 K  vgetname( object )        返回实体的名称' j' Y8 y' u. o
setname( object, name )        设定实体的名称
' U8 X$ K7 Z7 p: Y% o0 A3 }getitemtype( object )        返回实体中临时实体类型的值8 @4 O1 S1 [3 A5 Q! p( J9 d
setitemtype( object, num)        设定实体中临时实体类型的值( u  G6 z" D6 K3 \
setcolor( object, red, green, blue )        设定实体的颜色) J) J1 U+ Z! U( u
colorred( object ) blue,green,white...        设定实体的颜色为红、蓝、绿、白等
' |1 G4 |4 o) M8 k, Nsetobjectshapeindex ( object , indexnum )        设定实体的3D形状! ?/ o" Q; l1 b2 N3 W' Z3 S
setobjecttextureindex ( object , indexnum )        设定实体的3D纹理- z6 k5 A/ ^! ^
setobjectimageindex ( object , indexnum )        设定实体的2D 纹理,通常只在平面视图中使用5 P' D1 U5 C' I4 C; `. F0 g5 D
实体空间属性
5 }. i7 T0 w. J4 i  e+ ~命令(参数列表)        说明3 _0 W5 P2 R/ G9 I8 m3 J
         * X+ U5 Q: _$ ?' ^+ x$ v! z
xloc( object ) yloc( object ) zloc( object )        这些命令返回实体x、y、z轴向的位置3 i  j6 K" y2 ]4 U" i' J
setloc( object, xnum, ynum, znum )        此命令设定实体x、y、z轴向的位置2 m% ^$ a  c8 x" |8 ]1 ?
         
0 a2 E1 ^/ T& A7 O" r7 G1 I! exsize( object ) ysize( object ) zsize( object )        这些命令返回实体x、y、z轴向的尺寸大小
# N  E# i9 ~0 S& W4 j: k2 O& A/ Zsetsize( object, xnum, ynum, znum )        此命令设定实体x、y、z轴向的尺寸大小
4 D0 ^' M* X3 G4 v            F. L4 f  Q4 t* ^. t- L2 Z- H
xrot( object ) yrot( object ) zrot( object )        这些命令返回实体围绕x、y、z轴向的旋转角度* L' u! W4 a7 D! x& V$ y& s
setrot( object, xdeg, ydeg, zdeg )        此命令设定实体围绕x、y、z轴向的旋转角度: d" k# k* M% u9 M4 v8 ~/ g

7 }( T+ _. f+ o' r6 {0 F3 V/ P$ s9 w1 ?7 i6 Q

; z+ s$ H9 ]  r8 \/ {& T8 p* T- |  T
/ `' i" F+ C3 D; {

. F( k( _7 ]8 }9 t9 r+ _! O' |- y0 @4 k1 O# }- H
( O# O* T! y3 z* R4 X# i" m- _
) X& @7 C2 l7 ]

( K$ `# b& ^6 C( n" a: g- }1 R9 O! j% i4 {
7 f! y: G  E, z' n
+ z/ i) m* L' X. |' m0 M

; j9 j6 R. F# M& c1 D/ s: w; K5 E# |
! e6 g% r* Z, ^" p! W实体统计值
6 Z/ j: W7 I! C& I$ ^: e% h! f命令(参数列表)        说明3 B7 `0 ?& I  b8 N0 E" d
content( object )        返回实体当前数量; e: Q. T9 G# K" D
getinput( object )        返回实体的输入统计
/ Q( z6 {3 Z7 s! \( \9 Ngetoutput( object )        返回实体的输出统计6 E2 C, g% c& U8 I6 u1 E- U' T
setstate( object, statenum )        设定实体的当前状态0 R" i- ~4 o7 D( S0 s
getstatenum( object )        返回实体的当前状态
4 F; O+ {* l; J: Bgetstatestr( object )        以字符串返回实体当前状态
  Q! Q- S! d/ |$ Ogetrank( object )        返回实体的排序; {" C: q! K& j- Z; |( S
setrank( object,ranknum )        设定实体的排序
# j* L! ?3 r! K: a; ggetentrytime( object )        返回实体进入到当前所在实体中的时刻" c- I" c( y" q
getcreationtime( object )        返回实体的创建时刻5 |5 q+ n/ m5 U. K7 v% o! W
实体标签+ r/ f9 Z  r7 f$ L3 {, I
命令(参数列表)        说明
7 G% m, e+ S+ g& Sgetlabelnum( object, labelname ) getlabelnum( object, labelrank)        返回实体的标签值7 a8 j8 x6 A. e8 Z0 R( o  X# d# U! _
setlabelnum( object, labelname , value ) setlabelnum( object, labelrank , value )        设定实体的标签值; L/ E: U1 f2 X% c4 x) k" S4 v
getlabelstr( object, labelname )        获得实体标签的字符串值. f- M9 p" n* n0 P  `9 ]4 K. T
setlabelstr( object, labelname , value ) setlabelstr( object, labelrank , value )        设定实体标签的字符串值
; t3 c- y" M. x. I( q) Qlabel( object, labelname ) label(object, labelrank)        返回一个作为节点的标签的引用,此命令常用在把标签当作一个表来使用的情况下。
3 R( x" ^- h2 C% ~1 o  H  L  ?7 O/ i7 \5 n( C
命令(参数列表)        说明
0 a# @  o1 a" g4 N2 c& @gettablenum( tablename / tablenode / tablerank, rownum, colnum )        返回表中特定行列的值6 `8 ]- v- t& e# ^7 B8 `  ?& o
settablenum( tablename / tablenode / tablerank, rownum, colnum, value)         设定表中特定行列的值- V- `) H3 h, v
gettablestr( tablename / tablenode / tablerank, rownum, colnum )        返回表中特定行列的字符串值
1 l2 q5 z7 t! N* R/ }6 E5 Q  ]settablestr( tablename / tablenode / tablerank, rownum, colnum, value)         设定表中特定行列的字符串值1 q' R. n* o) T. J5 y; y  G, d
settablesize( tablename / tablenode / tablerank, rows, columns )        设定表的行列数大小
4 ], ~! W* f& Q* i. o9 N5 ogettablerows( tablename / tablenode / tablerank)        返回表的行数
* @, o. P7 e  y" e; hgettablecols( tablename / tablenode / tablerank)        返回表的列数
' C4 l1 K( l* jclearglobaltable( tablename / tablenode / tablerank)        将表中所有数字值设为0  i) p) g; S. z. `* e# d
实体控制8 ~" M' E2 s. }" G* z# Y
命令(参数列表))        说明
2 h/ Z0 E. Q2 dcloseinput( object )        关闭实体的输入端口, `9 `& g8 {/ g; n
openinput( object )        重新打开实体的输入端口# W. b7 j  n$ d% n' j; a
closeoutput( object )        关闭实体的输出端口
6 B& p1 Z3 P: c" L/ }! b. ~4 @# hopenoutput( object )        重新打开实体的输出端口
% z& c( w- w; V3 r$ J$ psendmessage( toobject, fromobject, parameter1, parameter2, parameter3 )        触发实体的消息触发器
% l. H- Q: z+ H5 P. xsenddelayedmessage( toobject, delaytime, fromobject, parameter1, parameter2, parameter3 )        在一段特定时间延迟后触发实体的消息触发器& P# f4 Y% z+ q: C% ~
stopobject( object, downstate )        无论实体在进行什么操作,都令其停止,并进入指定的状态4 N. n; m2 ~6 B& d( A
resumeobject( object )        使实体恢复其原来的无论什么操作
! E: Z# y4 _4 ]3 t7 m- G- l6 ystopoutput( object )        关闭实体的输出端口,并累计停止输出的请求5 x6 R2 w) v' g9 e
resumeoutput( object )        在所有停止输出请求都恢复以后,打开实体的输出端口0 B: j) C; e( w" Q
stopinput( object )        关闭实体的输入端口,并累计停止输入的请求
9 h+ L, J( M0 A, p% `+ W- kresumeinput( object )        在所有停止输入请求都恢复以后,打开实体的输入端口% t4 B( v8 e6 S0 N2 |# I
insertcopy( originalobject, containerobject )        往容器里插入新的实体复制品2 Y* M8 f: s6 s0 v8 ~+ H( V+ [9 G% c
moveobject( object, containerobject )        将实体从当前容器移到它的新容器中
8 T' q0 F- @9 O- r4 K6 I; Q高级函数" n( n: {8 k4 E4 I1 ?3 T( z
实体变量
7 b6 k- W5 Y8 t9 p9 P2 X+ L3 q命令(参数列表)        说明
4 m) \3 Q5 R+ R, rgetvarnum( object, “variablename” )        返回给定名称的变量的数值' Z  d  i& H4 {+ [5 y
setvarnum( object, “variablename” , value )        设定给定名称的变量数值( t$ @4 B) c! ?9 L) c, W0 c- l/ Z
getvarstr( object, “variablename” )        返回给定名称的变量的字符串值$ A; l  F. ]/ }  F
setvarstr( object, “variablename” , string )         设定给定名称的变量的字符串值
9 a1 d; F- z2 i5 P! u( J9 zgetvarnode( object, “variablename” )        返回一个节点,作为指向给定名称的变量的引用
' X! s5 f& j& Q7 w8 H任务执行器控制/ q+ h5 c/ Q/ h. X& U/ J. P
参见任务序列,可以获得更多有关控制任务执行器的信息。- V$ B7 O& R' z! I
提示和界面输出
6 h; ?1 Z1 e8 G3 n7 X2 O+ E命令(参数列表)        说明
) d5 l9 D# Q) i4 Jpt( text string )        向输出控制台打印文本
) `6 K: q/ N1 v5 F$ lpf( float value )        向输出控制台打印浮点数值9 ?, g( G1 Z, z. v; }$ n! n! @- [  j
pd( discrete value )        向输出控制台打印整数数值
% X4 D2 F0 [# _! [6 X9 wpr( )         在输出控制台中建新的一行# g) U% M1 R2 S
msg( “title”, “caption” )        打开一个简单的“ 是、否、取消”消息框
! D# X) \2 M0 q. k" _userinput( targetnode, “prompt” )        打开一个可以设定模型节点值的对话框
$ k! x2 V) X6 f2 B; n/ wconcat( string1, string2, etc. )        合并两个或多个字符串
0 `) {$ i5 T) w+ O; `& x. U) K; f更多高级函数
+ k0 W, N2 R2 q. e6 S下面是可能使用到的更多高级函数。这里没有提供参数列表,参见命令集可获得更多信息。% S* g- Y/ T$ Y5 G
节点命令 - node(), nodeadddata(), getdatatype(), nodetopath(), nodeinsertinto(), nodeinsertafter(), getnodename(), setnodename(), getnodenum(), getnodestr(), setnodenum(), setnodestr(), inc();
/ @1 L( n2 q9 A+ ~/ v' x数据交换命令 - stringtonum(), numtostring(), tonum(), tonode(), apchar();4 R/ V4 K" {0 j- ^: K* ~
节点表命令 - setsize(), cellrc(), nrows(), ncols();# r1 u9 x& o' j4 v" K7 l, m
模型运行命令 - cmdcompile(), resetmodel(), go(), stop();
; ]+ t  U/ C4 M3D个性化绘制代码命令 - drawtomodelscale(), drawtoobjectscale(), drawsphere(), drawcube(), drawcylinder(), drawcolumn(), drawdisk(), drawobject(), drawtext(), drawrectangle(), drawline(), spacerotate(), spacetranslate(), spacescale();
3 _; A/ T9 `9 g( C8 [8 f+ K1 g9 kExcel命令 - excellaunch(), excelopen(), excelsetsheet(), excelreadnum(), excelreadstr(), excelwritenum(), excelwritestr(), excelimportnode(), excelimporttable(), excelclose(), excelquit();% g5 ~0 U& ?% |
ODBC命令 - dbopen(), dbclose(), dbsqlquery(), dbchangetable(), dbgetmetrics(), dbgetfieldname(), dbgetnumrows(), dbgetnumcols(), dbgettablecell(), dbsettablecell();
. q/ b; J  x6 G* D3 _运动学命令 - initkinematics(), addkinematic(), getkinematics(), updatekinematics(), printkinematics()
2#
ants_song 发表于 2010-7-15 08:26:59 | 只看该作者
哈哈,怎么把3.0中文版操作说明书中的内容粘上来啦
3#
往事如风210 发表于 2010-7-15 09:58:21 | 只看该作者
哈~~不要说这也是你的家底哦!
4#
 楼主| wj109260758 发表于 2010-7-15 11:44:40 | 只看该作者
我觉得这玩意很好啊,当时看到这个就开窍了
5#
02琊琊 发表于 2012-6-19 21:48:15 | 只看该作者
哈哈 受用 谢啦
6#
DONGDAxxy 发表于 2012-9-17 17:11:48 | 只看该作者
7#
嗜血黑猫 发表于 2013-4-23 10:16:17 | 只看该作者
很有用,谢谢分享
8#
yushaozheng1990 发表于 2013-12-9 21:03:44 | 只看该作者
有些粗糙啊
9#
a445608540 发表于 2013-12-12 08:40:52 | 只看该作者
谢谢分享
10#
yuzhu 发表于 2015-12-24 10:47:23 | 只看该作者
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋|手机版|Archiver|全球FlexSim系统仿真中文论坛 ( 京ICP备14043114号-2 )

GMT+8, 2025-7-2 04:48 , Processed in 0.080402 second(s), 13 queries .

Powered by Discuz! X3.3© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表