|
本帖最后由 zorsite 于 2022-10-28 14:14 编辑
6 B- f3 i4 c( I9 r9 `
5 s) X7 Q6 g' Q2 w+ q% y' SFlexsim可以通过isclasstype函数判断实体类型。# ? T; ?! G* t" _0 L
isclasstype (obj object, num/str classtype): P- V. v/ A$ D6 n" K
8 Z' _% o9 M6 j
Compares the object to classtype, returns 1 for yes, 0 for no: c4 V* L0 y, i0 J% R
Description
& j# y/ G# ?/ Y' b# e3 E6 O# VReturns whether or not the object is of the given classtype. 1 means yes, 0 means no. Possible classtype parameters are:2 C, _/ }, D d
CLASSTYPE_FLEXSIMOBJECT
& ^) |, H% v5 OCLASSTYPE_FIXEDRESOURCE
4 S( J2 X1 x8 s% @ a$ A$ iCLASSTYPE_TASKEXECUTER
# c2 g: B4 U9 S% D- ^+ V8 Y( dCLASSTYPE_NETWORKNODE* V' I$ a- w0 H# w7 ?. `% v( U$ y; a
etc.
2 f# N: W# J" C7 V1 N. `) j! e3 c4 ^& Y" ^7 w# B
Example
& i* x Y5 P) K0 Zisclasstype(current, CLASSTYPE_DISPATCHER);
8 N& A3 [' ^5 `( \
& m. C) B6 D9 F2 E8 \6 K
2 |8 _3 e4 i& g9 O* c1 K1 M) f" a! i8 e4 o; `! ~' R3 j
Flexism有以下实体类型:, B; ?4 c# S! M6 _
- isclasstype(current,CLASSTYPE_CONVEYOR);) {2 b6 T' j5 ^/ Y2 y6 m# w+ y
- isclasstype(current,CLASSTYPE_DISPATCHER);+ _ L4 F4 D9 l) }% J
- isclasstype(current,CLASSTYPE_FIXEDRESOURCE);
' L! s1 Z: t1 t8 l - isclasstype(current,CLASSTYPE_FLEXSIMEVENTHANDLER);$ n# k3 Y3 R2 Q
- isclasstype(current,CLASSTYPE_FLEXSIMOBJECT);& s0 E. g% |- A; s% ?
- isclasstype(current,CLASSTYPE_FLUIDOBJECT);
6 o* ^! H3 q/ O' {% Y - isclasstype(current,CLASSTYPE_FLUIDOBJECT2);5 m# S2 p/ J2 T, r+ @+ ]7 \& j8 B. [+ v
- isclasstype(current,CLASSTYPE_LINECONTROLLER);
# R) \* C% G6 D" l# @0 V1 b - isclasstype(current,CLASSTYPE_MERGESORT);
2 g; M* G# Y7 m# O3 Y, }/ O/ W - isclasstype(current,CLASSTYPE_MTBFMTTR);9 j& C, Y, H6 R; x- H5 [+ h
- isclasstype(current,CLASSTYPE_NAVIGATOR);* M) \ U$ |' K0 w' y( {
- isclasstype(current,CLASSTYPE_NETWORKNODE);
0 M$ ]0 Y, @3 b - isclasstype(current,CLASSTYPE_ODT);: I$ L0 g5 d" @; P1 [5 H# t
- isclasstype(current,CLASSTYPE_OWNERDRAWN);$ k" m' i5 B; j! S, ~
- isclasstype(current,CLASSTYPE_PROCESSOR);
{+ N6 P4 ]$ w8 M, | - isclasstype(current,CLASSTYPE_SYSTEMCONTROLLER);
6 V2 O* q+ @& Z& | - isclasstype(current,CLASSTYPE_TASKEXECUTER);
: x, K9 a2 c" s* @ - isclasstype(current,CLASSTYPE_TRAFFICCONTROLLER);
% t% G5 }1 i! q. ~ - isclasstype(current,CLASSTYPE_VISUALTOOL);* }; ^" x9 N: M4 s
- isclasstype(current,CLASSTYPE_WANTCONNECTLOGIC);
复制代码 , j% R: ?" G7 c8 a: L. W0 U
% j3 y9 B6 _% f; N
isclasstype 的第2个参数应该是数字或文本,正常情况下函数应该写作:- isclasstype(current,"Processor");
复制代码 或者
4 x5 C* R2 O0 |8 @8 X+ k7 {% @8 `' O& w1 ^$ w3 X! ^& d
在代码中使用数字不便于理解代码,使用文本时需要注意大小写,而且需要加引号,也常会出现拼写错误。
' H% O8 r8 D5 r3 mFlexsim将常用实体类型设置为常量,可以在代码中直接引用,不仅可以自动补全,也便于代码的阅读和理解。
, q; W% _- W0 O2 ~7 b
3 S, q$ \. J( Y
, Q* t: k( ]0 Z. K$ Y; }
% ?4 F W* H3 i( h! |0 X. ` |
|