|
本帖最后由 zorsite 于 2022-10-28 14:14 编辑 6 y |0 I9 `/ s, q6 s
! q- e4 q" f$ m1 l/ @Flexsim可以通过isclasstype函数判断实体类型。$ Y; J! d( {1 W+ d ~
isclasstype (obj object, num/str classtype)
/ {5 G' m9 r) z
5 ~( P& F2 E- Q9 f) k, ?Compares the object to classtype, returns 1 for yes, 0 for no$ ?2 ~- h. D1 h7 L
Description
/ ?) R! C/ T9 ]1 x! k xReturns whether or not the object is of the given classtype. 1 means yes, 0 means no. Possible classtype parameters are:
! a3 F9 G/ e( R2 w5 i uCLASSTYPE_FLEXSIMOBJECT, p: Q+ M* k0 \4 S: W( d
CLASSTYPE_FIXEDRESOURCE/ M; D! I- N' f. D; a; W o5 Z5 n
CLASSTYPE_TASKEXECUTER! \) w. T7 S* \
CLASSTYPE_NETWORKNODE. F" [3 r! k4 _, B' V
etc." o, R4 \: L2 ?* \6 g/ {7 q
9 f& V0 W H, j! h f
Example* X v, Z- J+ `5 f
isclasstype(current, CLASSTYPE_DISPATCHER);) ~0 b" _9 \ N- q' b
) S& H; g6 `( P- @( ?" ^
; P1 S+ u/ a0 l4 b- A/ b
9 y" m% H1 G" iFlexism有以下实体类型:
; f( _2 `8 ^1 ?7 o' ` R+ H1 X- isclasstype(current,CLASSTYPE_CONVEYOR);" w; j. [2 W% }" |: W# n9 v
- isclasstype(current,CLASSTYPE_DISPATCHER);0 l2 O0 d2 Q+ P- D: S
- isclasstype(current,CLASSTYPE_FIXEDRESOURCE);
% f- c, E& @' ^5 O" s8 P - isclasstype(current,CLASSTYPE_FLEXSIMEVENTHANDLER);+ D+ A5 [' f' `. B' G$ ?3 R
- isclasstype(current,CLASSTYPE_FLEXSIMOBJECT);
3 r: L& X K+ M. D% ~1 P+ ] {) y* g% b9 U - isclasstype(current,CLASSTYPE_FLUIDOBJECT);
& h- q. y, P3 y - isclasstype(current,CLASSTYPE_FLUIDOBJECT2);: F: e( F6 [; N8 x1 k6 K" P
- isclasstype(current,CLASSTYPE_LINECONTROLLER);) p' A# c) C* Z6 V- l! n& d1 n
- isclasstype(current,CLASSTYPE_MERGESORT);
4 F' {5 O% X! ?( l0 \ - isclasstype(current,CLASSTYPE_MTBFMTTR);
4 x( m0 y' l; z; y3 k, ~2 W - isclasstype(current,CLASSTYPE_NAVIGATOR);
! J8 V) B, B. d$ F$ K. g3 x, p - isclasstype(current,CLASSTYPE_NETWORKNODE);4 ]1 ]2 h7 O+ z# t0 j7 G3 ?
- isclasstype(current,CLASSTYPE_ODT);
6 _% H% S) D0 N( U2 M/ o( i+ \ - isclasstype(current,CLASSTYPE_OWNERDRAWN);
$ Q5 \ ?( v: d5 ^' b* g- O6 M - isclasstype(current,CLASSTYPE_PROCESSOR);
1 ?/ Y- I8 B1 A - isclasstype(current,CLASSTYPE_SYSTEMCONTROLLER);2 i& e7 u! J, Y f
- isclasstype(current,CLASSTYPE_TASKEXECUTER);
* C$ _% h0 J9 S1 I1 u - isclasstype(current,CLASSTYPE_TRAFFICCONTROLLER);5 K/ U9 ^8 O0 q' {4 Z7 u. _7 `
- isclasstype(current,CLASSTYPE_VISUALTOOL);
) S& E9 Q# s, _) a; ` - isclasstype(current,CLASSTYPE_WANTCONNECTLOGIC);
复制代码 5 Z! B5 ^1 Y' E- u
* F0 M n+ x+ r' ?isclasstype 的第2个参数应该是数字或文本,正常情况下函数应该写作:- isclasstype(current,"Processor");
复制代码 或者# F% M9 |+ b) U' |1 u* O
, v4 F, [3 T8 C) D9 `4 v在代码中使用数字不便于理解代码,使用文本时需要注意大小写,而且需要加引号,也常会出现拼写错误。& Q2 V9 K y4 J- N3 y, V2 k
Flexsim将常用实体类型设置为常量,可以在代码中直接引用,不仅可以自动补全,也便于代码的阅读和理解。
3 n# H, [6 }+ [3 L6 D F$ ?2 o: [0 n+ j8 B9 p" {$ d5 A
; z+ t6 B& B) ^: f2 Y5 M" P
& A- ~$ S, \! T8 w& x n7 J3 m |
|