|
本帖最后由 zorsite 于 2022-10-28 14:14 编辑 " v, J6 T) a ]# ]3 `4 T
' ~4 F8 U# Y2 E! |& X
Flexsim可以通过isclasstype函数判断实体类型。
; j5 w. I i4 ]isclasstype (obj object, num/str classtype)* ^% D6 c+ E! j" a
) h3 n% |; S/ W# i; J. ]+ A$ W
Compares the object to classtype, returns 1 for yes, 0 for no0 X6 w) N G& {# k. M
Description* Z# }( F$ V$ H/ c7 T
Returns whether or not the object is of the given classtype. 1 means yes, 0 means no. Possible classtype parameters are: ?, t2 o% ~5 x
CLASSTYPE_FLEXSIMOBJECT6 y5 A4 K) V4 y
CLASSTYPE_FIXEDRESOURCE
" b+ j( h( R% DCLASSTYPE_TASKEXECUTER6 v9 f" }) z2 N9 k" ]
CLASSTYPE_NETWORKNODE
3 F* {( s, H l. o. _etc., e1 q+ r- Y; x8 G! [" O+ H
3 b. \7 l* Y2 y' z8 L1 {
Example$ P; P' @ O9 S% Z; {' Z' Y5 l
isclasstype(current, CLASSTYPE_DISPATCHER);
6 `! W8 T/ K+ l$ ]; V- c" `& X5 `4 N7 ?& l9 R8 \
: r C& s' a, O+ h" M$ E( A% B o
( v) h+ N# n" k: f' C+ f% I
Flexism有以下实体类型:
# o. L* N/ w% m) m Q- isclasstype(current,CLASSTYPE_CONVEYOR);: ~' h) |. @( ~
- isclasstype(current,CLASSTYPE_DISPATCHER);2 H, d, f! |" ^' k0 k& b3 c' t
- isclasstype(current,CLASSTYPE_FIXEDRESOURCE);" b4 f6 C) x" }& W @
- isclasstype(current,CLASSTYPE_FLEXSIMEVENTHANDLER);
/ M/ P* k& L+ [3 g7 n - isclasstype(current,CLASSTYPE_FLEXSIMOBJECT);
4 ^% w6 Z" }$ q - isclasstype(current,CLASSTYPE_FLUIDOBJECT);# z# ?) y9 |' h2 a2 c2 C3 e
- isclasstype(current,CLASSTYPE_FLUIDOBJECT2);
) |, E& Y2 [$ ?- C5 I p7 ~( M - isclasstype(current,CLASSTYPE_LINECONTROLLER);& G. F' t1 o6 V3 g2 g5 [ p" J
- isclasstype(current,CLASSTYPE_MERGESORT);% F; Z( G& h6 p9 l# h
- isclasstype(current,CLASSTYPE_MTBFMTTR);* a8 Q7 L8 c: x. O
- isclasstype(current,CLASSTYPE_NAVIGATOR);5 i% e E6 D* ?; z1 a2 I
- isclasstype(current,CLASSTYPE_NETWORKNODE);* h# C/ O1 f0 [& N! f
- isclasstype(current,CLASSTYPE_ODT);
% f, s! F" \ c+ ^/ _8 A( H - isclasstype(current,CLASSTYPE_OWNERDRAWN);
' X' o- M: Z# ?% d; h6 q1 l - isclasstype(current,CLASSTYPE_PROCESSOR);
: N) A0 g, i9 ~0 @' h4 } - isclasstype(current,CLASSTYPE_SYSTEMCONTROLLER);: B5 l% q. e! c( l/ k5 _. R7 l5 |
- isclasstype(current,CLASSTYPE_TASKEXECUTER);1 q1 _% O' s. s: R5 p+ B t
- isclasstype(current,CLASSTYPE_TRAFFICCONTROLLER);
( D. S, v R8 U" x' w - isclasstype(current,CLASSTYPE_VISUALTOOL);7 \" G7 ]6 ]1 n% I7 S# r; H0 M
- isclasstype(current,CLASSTYPE_WANTCONNECTLOGIC);
复制代码
; ^9 [) t$ f) k) g( @# N, v) t
- E3 n5 X5 J5 s) |% Kisclasstype 的第2个参数应该是数字或文本,正常情况下函数应该写作:- isclasstype(current,"Processor");
复制代码 或者. S* O5 d/ j5 Z( a, B! C0 w
1 b! J- z5 ~6 D9 I8 l9 |5 c1 ]在代码中使用数字不便于理解代码,使用文本时需要注意大小写,而且需要加引号,也常会出现拼写错误。
- g/ d8 W0 ^' i. FFlexsim将常用实体类型设置为常量,可以在代码中直接引用,不仅可以自动补全,也便于代码的阅读和理解。/ I+ \! ~: k1 o5 f" X
. C I; H' d, z5 w& d
9 d* r$ K# f, {% b( u' c3 I1 R0 I7 E# i8 M" B! L) p& Z6 w3 k! x' P
|
|