全球FlexSim系统仿真中文论坛

标题: Flexsim实体类型 [打印本页]

作者: zorsite    时间: 2022-10-28 12:05
标题: Flexsim实体类型
本帖最后由 zorsite 于 2022-10-28 14:14 编辑 ' y' z8 b9 Y5 B) n
. P% ]4 a5 H! _7 n0 M2 R
Flexsim可以通过isclasstype函数判断实体类型。/ U' ~' R/ l" B0 w8 U* N) K
isclasstype (obj object, num/str classtype)
- l- S7 |& T3 I6 p* {; G
* z, ~2 m2 T* T/ Z; B8 Y% w' N' SCompares the object to classtype, returns 1 for yes, 0 for no
9 e+ I1 l: i5 g  E* a8 WDescription
. _& X; E4 n. J2 F! DReturns whether or not the object is of the given classtype. 1 means yes, 0 means no. Possible classtype parameters are:
8 n' Y* ~# \# q! o/ KCLASSTYPE_FLEXSIMOBJECT
, f/ N  d' {' ^CLASSTYPE_FIXEDRESOURCE' w$ P! ^0 Z1 h' H! l0 I7 A; D
CLASSTYPE_TASKEXECUTER
0 @! h3 H/ x/ G  n9 {CLASSTYPE_NETWORKNODE# X% d/ p  d8 U- \" J0 C
etc.. j7 Y1 X- W5 U8 F( S% |4 q4 s# k- Z
! I: F2 D& G* d- J; y: s
Example
$ s/ V* s5 c1 n5 @) {6 ], f& q) p# fisclasstype(current, CLASSTYPE_DISPATCHER);9 s1 b8 V$ O  i& f8 {

3 o  L8 |. p( l! A
- C4 s+ y# B  c7 R* C- I+ @
/ T7 @5 G! [/ y) JFlexism有以下实体类型:1 m5 V4 F( t) o7 l9 X; h0 _. v
  1. isclasstype(current,CLASSTYPE_CONVEYOR);  ^# V* L% c9 Z" l0 W( ^
  2. isclasstype(current,CLASSTYPE_DISPATCHER);
    * r4 F0 H' s( `3 a, }
  3. isclasstype(current,CLASSTYPE_FIXEDRESOURCE);
    ) e# z, ?$ Z1 D6 l% u1 g% H' Z: o
  4. isclasstype(current,CLASSTYPE_FLEXSIMEVENTHANDLER);
    $ R+ g: r$ K1 p! l. V3 v" F
  5. isclasstype(current,CLASSTYPE_FLEXSIMOBJECT);& x$ L9 u. _& z  \! Z% O* R+ v; T
  6. isclasstype(current,CLASSTYPE_FLUIDOBJECT);
    ' E0 ]7 @' B! t" k
  7. isclasstype(current,CLASSTYPE_FLUIDOBJECT2);) I7 l" B3 t1 _$ m" \$ \2 Y$ |3 B
  8. isclasstype(current,CLASSTYPE_LINECONTROLLER);& V9 t& x; D: `% }& q$ U( w  q1 d
  9. isclasstype(current,CLASSTYPE_MERGESORT);. r, M# v( R; y6 X" b/ Z- D
  10. isclasstype(current,CLASSTYPE_MTBFMTTR);
    $ q  ?5 n( V8 ^! B' k, f  j
  11. isclasstype(current,CLASSTYPE_NAVIGATOR);
    ! s2 S- B( E, P1 N; i9 e
  12. isclasstype(current,CLASSTYPE_NETWORKNODE);% p' W: n- z! D2 i6 A& h/ m/ e+ X
  13. isclasstype(current,CLASSTYPE_ODT);. \9 S7 C* q! ]& o/ p' M- B: e6 }
  14. isclasstype(current,CLASSTYPE_OWNERDRAWN);
    ; a- N( P0 ~% K+ x; G% ?# u
  15. isclasstype(current,CLASSTYPE_PROCESSOR);
    8 Q. {0 M# _9 \
  16. isclasstype(current,CLASSTYPE_SYSTEMCONTROLLER);
    ) e4 t" g, \- l+ |2 b/ ?
  17. isclasstype(current,CLASSTYPE_TASKEXECUTER);$ K, ^! S) H2 s) [
  18. isclasstype(current,CLASSTYPE_TRAFFICCONTROLLER);( T# x4 ^7 T+ P: m
  19. isclasstype(current,CLASSTYPE_VISUALTOOL);
    + {# G2 X$ x" |7 {* I
  20. isclasstype(current,CLASSTYPE_WANTCONNECTLOGIC);
复制代码
& Y* v4 j% s5 y9 b
& R8 H# R* \1 Y  v; d" O8 I9 m# X# a
isclasstype 的第2个参数应该是数字或文本,正常情况下函数应该写作:
  1. isclasstype(current,"Processor");
复制代码
或者
: f. `* |+ R  l: h0 x' G
  1. isclasstype(current,64);
复制代码

$ U  Z0 r- d$ j" w在代码中使用数字不便于理解代码,使用文本时需要注意大小写,而且需要加引号,也常会出现拼写错误。2 {* e$ N/ q9 }5 w+ D' V  t" C* e
Flexsim将常用实体类型设置为常量,可以在代码中直接引用,不仅可以自动补全,也便于代码的阅读和理解。! E6 a) Z; x' F$ t0 I

: }( r9 `( s: D! q
3 \9 F: k. k$ i, q& e$ n! j
8 {5 Y' y6 O7 R5 _% v
作者: zorsite    时间: 2022-10-31 21:21
本帖最后由 zorsite 于 2022-10-31 21:23 编辑
$ r# I# \: ^/ G! D, S6 O8 L
2 V& ^, f" ^% \
Class TypeClass Type Number
CLASSTYPE_OWNERDRAWN
-2147483648
CLASSTYPE_ODT
1
CLASSTYPE_FLEXSIMOBJECT
2
CLASSTYPE_FIXEDRESOURCE
4
CLASSTYPE_DISPATCHER
8
CLASSTYPE_TASKEXECUTER
16
CLASSTYPE_NAVIGATOR
32
CLASSTYPE_PROCESSOR
64
CLASSTYPE_NETWORKNODE
128
CLASSTYPE_VISUALTOOL
256
CLASSTYPE_CONVEYOR
512
CLASSTYPE_TRAFFICCONTROLLER
1024
CLASSTYPE_MTBFMTTR
2048
CLASSTYPE_MERGESORT
4096
CLASSTYPE_WANTCONNECTLOGIC
8192
CLASSTYPE_FLUIDOBJECT
16384
CLASSTYPE_FLUIDOBJECT2
32768
CLASSTYPE_LINECONTROLLER
65536
CLASSTYPE_SYSTEMCONTROLLER
131072
CLASSTYPE_FLEXSIMEVENTHANDLER
262144





欢迎光临 全球FlexSim系统仿真中文论坛 (http://www.flexsimasia.com/) Powered by Discuz! X3.3