全球FlexSim系统仿真中文论坛

搜索
查看: 1486|回复: 4
打印 上一主题 下一主题

PF里判断命令代码无法识别标签的问题

[复制链接]
跳转到指定楼层
1#
廉梦华 发表于 2023-12-13 08:46:51 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我想达成的结果是——通过发生器创建四种不同的临时实体,分别是绕x轴旋转180度、绕z轴旋转180度、绕x轴和z轴旋转180度、不旋转这四种临时实体,同时给这四种临时实体赋标签分别为xRotation、zRotation、xzRotation、noRotation。然后从PF里的判断命令中引出4条支线1、2、3、4分别对应上面四种实体,判断里的代码总是识别不了我给临时实体设置的标签,有没有哪位老师可以帮我看一下,是哪里的问题,该怎么办才能解决,十分感谢!4 f1 j: H  g  K8 _
发生器的代码如下:
+ u+ j" Y  B6 s/**Custom Code*/
! {* K$ V/ U. }, t# `) s  L- s& S; K
' K! K3 f. {( E- `( ?0 v: zObject current = ownerobject(c);
! n) v1 K- x# ^Object item = param(1);
6 J) D% I# [. k" [5 ?3 ~- Sint port = param(2);
! @$ k. R6 u1 ?6 U5 T% Q
! e! L  b3 d0 Y8 cObject involved = item;
7 s2 F$ i; [+ |double x1 =180;# X  h4 N6 L1 M$ }0 m9 K0 h5 V
double y1 = 0;+ Z7 Z* L7 p5 ]# S- q- O: i+ Y
double z1 = 0;/ B/ {  w  `: q

$ p/ v9 A6 p( M& ]3 o9 ldouble x2 = 0;
# @* ]" {% X7 U+ P: k' H7 ddouble y2 = 0;1 I% `- S/ ^/ K) F( W
double z2 = 180;+ X( a, g/ E+ U# u! P: T
* {8 C  a0 ]1 ]4 G( l
double x3 = 180;
2 v( n3 g: y9 {/ E0 E) |double y3 = 0;
" o% G' F6 ?5 X: B! Bdouble z3 = 180;+ A, X7 q. {+ y

5 h/ E$ Q9 W7 u" g" x4 H; @5 kdouble x4 = 0;
. P1 _) U. _3 `/ M3 v& B- G- [double y4 = 0;
0 \; d* P9 K& L# W( Ldouble z4 = 0;0 h4 m8 c0 P1 U/ m9 ~

* h3 J3 m6 Q6 P' F6 `$ h; hdouble randomVal = duniform(0, 4);% v: i- D* \0 H, R, \& H+ I6 y( W! G; ^
if(randomVal < 1)1 \" ~( V; o: p3 h
{5 o0 Z6 {' C) V8 m' U
   setrot(involved, x1, y1, z1);
  h/ I/ s7 f0 e  setlabel(involved,"Rotation","xRotation");$ x& P& {* ~  C7 r- v
}
1 u" O! o' _. ]9 K% n, Zelse if( randomVal < 2)! L7 O3 V& \( H1 u
{  ) v* E( k: A% v" N0 v& N
    setrot(involved, x2, y2, z2);1 m# X9 I  r$ ]2 E' L8 b
   setlabel(involved,"Rotation","zRotation");1 g9 u" Z9 U" j, p6 V
}0 {( A; g* P$ D
else if(randomVal < 3 )
4 o1 J% A; _* ^# T1 Y) g3 U1 r; C{
9 i7 _0 W0 ~$ f/ H% K: w    setrot(involved, x3, y3, z3);) i" r* H  G  p7 V: L  n
   setlabel(involved,"Rotation","xzRotation");
+ n! m, H9 p3 ]( Q, Q- K}
5 J0 d/ X- ^6 ]) P( N2 Q5 h9 ]4 l  Delse/ n5 _# L3 ?; A( e
{9 l' Y" h% T* s9 ^' v/ {
    setrot(involved, x4, y4, z4);
4 B1 m, @# }$ U' O7 H( D  setlabel(involved,"Rotation","noRotation");! ~$ p8 r" V& q' i/ G
}4 L0 R2 H# v$ b$ p/ x* `2 m
判断的代码如下:7 v) T2 b! c' u) V
/**Custom Code*/
  O, S# q9 A' XObject current =ownerobject(c);
/ c0 A# P: L- X  H4 u; |Object item = param(1);& x# U# o; J/ S) e
int port = param(2);
0 z- ^  s. D  v8 L* N2 O
1 b; a) u2 y8 t, \- `; \6 g1 LObject involved = item;* ~% T  Q  B- c* I3 N# v
" f9 K% I- ?6 M2 W( T! z6 O8 T: o
string labelVal = getlabelstr(involved, "Rotation");0 I3 u: @+ G9 _4 G5 ]/ K- ?
" u& R* I3 p1 f2 e& E7 o( W( ?; q
if(labelVal == "xRotation")
, b* f$ G6 ?. C4 c; t{/ f5 o: w" B3 j
    return 1; // Divert the item to port 1
) m; f# v+ A' \7 f2 k, R9 R) X}* _# Z) ^. D' M) E. c4 Y, y8 B
else if(labelVal == "zRotation")
3 r  ]; _" k8 }3 Y; y{
3 A" A- S" a/ |( ~6 I    return 2; // Divert the item to port 2
6 k; l6 _3 y; M" q/ {+ H}
( b5 i/ o' }  D# Ielse if(labelVal == "xzRotation")
( \# i* G3 v. }1 J% q{8 k" g; a5 u$ f/ T0 g
    return 3; // Divert the item to port 3
6 s4 I1 d9 T+ k2 d6 q}
9 w5 e5 m) m2 p+ _) v, lelse if(labelVal == "noRotation")
; ?6 ?- u, i; E( k9 P/ i; i2 W{8 t( N1 v. n: ?9 |
    return 4; // Divert the item to port 4( n% r7 T. e3 a! H2 ^- S, K( X
}
7 ]" `# n) c+ E. `  m+ v2 u$ c
/ T: l3 U+ p% i( B5 v模型附上:
& H2 U% w; _! w

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
2#
csn-support 发表于 2023-12-13 09:58:25 | 只看该作者
在pf中没有对四种类型的标签赋值,需要赋值以后再进行判断。
$ W" R* s* [+ d9 M- R0 D; G

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
3#
 楼主| 廉梦华 发表于 2023-12-13 11:53:51 | 只看该作者
csn-support 发表于 2023-12-13 09:583 P/ Q1 a- G) D0 `; F
在pf中没有对四种类型的标签赋值,需要赋值以后再进行判断。
: @0 ]: D5 f8 d1 p
谢谢!谢谢!十分感谢老师的指导,
4#
csn-support 发表于 2023-12-13 12:07:11 | 只看该作者
廉梦华 发表于 2023-12-13 11:53# ~5 _! s9 ~' F  K
谢谢!谢谢!十分感谢老师的指导,

" @' g0 a3 t- W# n8 h2 s直接读取标签也可以,不过要记得加上token.% H& s7 h( B) Y; J

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
5#
 楼主| 廉梦华 发表于 2023-12-13 13:40:55 | 只看该作者
csn-support 发表于 2023-12-13 12:07* v2 {. _4 Y5 R7 t1 e! E
直接读取标签也可以,不过要记得加上token.

; B8 D: G  n. c: m( }9 c- D  t感谢老师的指导
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋|手机版|Archiver|全球FlexSim系统仿真中文论坛 ( 京ICP备14043114号-2 )

GMT+8, 2025-7-2 09:28 , Processed in 0.088636 second(s), 14 queries .

Powered by Discuz! X3.3© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表