|
本帖最后由 zorsite 于 2022-10-28 14:14 编辑 $ q- @, X: K# x% g0 t6 j& N
& O+ j8 @+ i! C5 @- \1 {' PFlexsim可以通过isclasstype函数判断实体类型。
+ @: u3 O& w R9 Sisclasstype (obj object, num/str classtype)8 j; t. e" L" }* P ?( P: j8 A; E
2 b- j" n! R g0 X5 L# K; V. V1 DCompares the object to classtype, returns 1 for yes, 0 for no+ O- z+ h0 X+ @* G) }
Description3 q! N5 s5 F: C, O- [- m
Returns whether or not the object is of the given classtype. 1 means yes, 0 means no. Possible classtype parameters are:' f9 b' p" s1 T* o
CLASSTYPE_FLEXSIMOBJECT; D7 ?# J1 n I+ ?: j
CLASSTYPE_FIXEDRESOURCE
6 l5 v: Q4 S: S. D2 gCLASSTYPE_TASKEXECUTER
: T5 ~' v( a0 _) X' sCLASSTYPE_NETWORKNODE* r5 Y: w. n0 {! h. U J$ O
etc.
4 O* S( q( q) `. H8 v% h
* y, u$ i6 |& C/ r8 ]0 IExample6 S' q* n/ o0 v4 d) m
isclasstype(current, CLASSTYPE_DISPATCHER);4 y6 o0 N# Y5 Z- y
& G; k. \9 c- I$ E- _2 A
% z& J* j- F) X9 l9 ^" R4 i) k; I& |& g% ~: {
Flexism有以下实体类型:8 L1 j5 `& b( r8 D- `! M
- isclasstype(current,CLASSTYPE_CONVEYOR);0 c' z# z. y! i @
- isclasstype(current,CLASSTYPE_DISPATCHER);5 N! B; `" N1 Y
- isclasstype(current,CLASSTYPE_FIXEDRESOURCE);( y8 V9 p- Z# z3 O0 o/ c
- isclasstype(current,CLASSTYPE_FLEXSIMEVENTHANDLER);
0 F d1 l# s2 Q6 @7 z - isclasstype(current,CLASSTYPE_FLEXSIMOBJECT);
/ j7 p9 O7 Z1 f p - isclasstype(current,CLASSTYPE_FLUIDOBJECT);! R+ R3 M5 V5 c; ^( X* n
- isclasstype(current,CLASSTYPE_FLUIDOBJECT2);) Q4 G5 N Z) y/ A: |
- isclasstype(current,CLASSTYPE_LINECONTROLLER);
5 l# @, {1 R* {/ U - isclasstype(current,CLASSTYPE_MERGESORT);
$ U& d* K \7 K+ ~# m- B9 A - isclasstype(current,CLASSTYPE_MTBFMTTR);0 j* K- y9 x; ?* i- s
- isclasstype(current,CLASSTYPE_NAVIGATOR);
7 l X9 g# `( ~- T - isclasstype(current,CLASSTYPE_NETWORKNODE);5 l* E5 f1 d3 U
- isclasstype(current,CLASSTYPE_ODT);& h a9 o/ M: n2 T: ]
- isclasstype(current,CLASSTYPE_OWNERDRAWN);5 ?3 U9 J1 p) ^. f( w
- isclasstype(current,CLASSTYPE_PROCESSOR);
# T, ]; M( w# S3 \ - isclasstype(current,CLASSTYPE_SYSTEMCONTROLLER);" v' H: m( P4 r
- isclasstype(current,CLASSTYPE_TASKEXECUTER);& g Z1 b6 o, s* T2 K/ Z1 E
- isclasstype(current,CLASSTYPE_TRAFFICCONTROLLER);
! ?; m* @+ ?3 v( ~5 a* @ - isclasstype(current,CLASSTYPE_VISUALTOOL);/ v7 S! a, R5 C
- isclasstype(current,CLASSTYPE_WANTCONNECTLOGIC);
复制代码
: g, C) \: _8 i% z9 \ c5 `; f" p: u L5 @1 c
isclasstype 的第2个参数应该是数字或文本,正常情况下函数应该写作:- isclasstype(current,"Processor");
复制代码 或者8 [' A' a! @6 c% I, L8 ^8 g
7 K+ ? ^6 U, q0 y. D9 {8 ^
在代码中使用数字不便于理解代码,使用文本时需要注意大小写,而且需要加引号,也常会出现拼写错误。0 l7 b- |, G2 K0 t: E4 |
Flexsim将常用实体类型设置为常量,可以在代码中直接引用,不仅可以自动补全,也便于代码的阅读和理解。% m* ]8 y0 W* \- E* d+ l2 b% \
3 a0 Y+ X4 l2 _- K
1 J" ?: ?/ N M+ ~; c+ o
# ^& P! y$ ]( C, m# H G3 T2 f
|
|