全球FlexSim系统仿真中文论坛

搜索
查看: 346|回复: 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分别对应上面四种实体,判断里的代码总是识别不了我给临时实体设置的标签,有没有哪位老师可以帮我看一下,是哪里的问题,该怎么办才能解决,十分感谢!
, g' D! }/ f- x/ L0 O! n发生器的代码如下:
8 ^# @' v; B8 F& u/ A4 o/**Custom Code*/
  o/ X$ j% n; A! O6 R. d/ B! B- q8 w% L% y+ G  a' Q3 Z- `
Object current = ownerobject(c);
0 D5 N0 l" P3 r* g8 R; t. F8 E6 ~Object item = param(1);$ ^/ t! {6 f# k  M1 H& p
int port = param(2);
2 ?( q3 E- m! l0 [
& u2 a/ c7 O# Q; cObject involved = item;
0 }1 U# t( y0 `9 }double x1 =180;
9 F0 R6 D& T* n2 }* J" t; xdouble y1 = 0;
3 T- X7 n) |+ I+ F* Rdouble z1 = 0;
7 I: t& a4 e$ _: t0 t7 V
7 V: A' }6 m$ J" ^$ T: [double x2 = 0;# o2 k- D4 q, `
double y2 = 0;
) y( @7 S6 }! g. k% y1 |double z2 = 180;6 f: N* R" U1 r
; u% g& }" c- f, h3 S; a
double x3 = 180;. q$ L, r9 ?9 L8 a
double y3 = 0;& X% A& \0 A7 J# A. I% g. a4 b
double z3 = 180;
+ h( h) X# O; C2 Z- A5 x% U  A& w% |" \& }2 ?9 _
double x4 = 0;
" w9 C' t$ U1 Ndouble y4 = 0;1 [. l4 H4 e5 r9 t$ |( ?3 x1 x
double z4 = 0;& F" y: q1 F! J( r' R4 h2 d; F

+ d: [/ ^& O6 f& E! U$ ^double randomVal = duniform(0, 4);5 J# U  v, H+ H! v
if(randomVal < 1)
6 z- L* t7 _+ U. f6 B6 y6 H8 F{1 @, E: L' g3 j' g
   setrot(involved, x1, y1, z1);
3 @+ e& O5 @: V& g( I0 H$ k  setlabel(involved,"Rotation","xRotation");
+ ^& j4 f& f/ N2 [  j9 N$ C5 E! a}9 l9 W4 B) v) k1 K+ F( P
else if( randomVal < 2)
& M: b' H% y! i) J) v8 K{  . P% Y6 y4 n7 f2 A
    setrot(involved, x2, y2, z2);- Q# Z; N9 O- _5 u
   setlabel(involved,"Rotation","zRotation");
! c! y5 O6 @$ z: J8 e}
' ]" D. M: @0 h6 H6 selse if(randomVal < 3 )$ o: z- F0 V% }. ?: c9 s# [& J
{4 U5 H+ N5 v' }9 y% T: E$ X
    setrot(involved, x3, y3, z3);
- @& ]0 p, f& p; f, z   setlabel(involved,"Rotation","xzRotation");+ t& i/ v% W( N1 A) L" j9 n2 p& w
}
( O) P3 i8 Q9 H* c1 ^$ xelse
3 Q; O; m' l* S3 C{5 Y! t- Q6 t3 ^! j  P  L3 F
    setrot(involved, x4, y4, z4);4 [+ v; v. u5 g& e/ @1 l; x2 L- |9 o
  setlabel(involved,"Rotation","noRotation");
" }- W, K9 ^! T- T( e, A) b# h; O}
! a4 n- c4 x$ \* ^8 Y6 A$ Y判断的代码如下:% u' F1 a( F6 v# b! `% L
/**Custom Code*/9 ~0 [+ r  V/ o! A4 D
Object current =ownerobject(c);, k$ ~) o3 N0 h$ z
Object item = param(1);
5 g4 U" D: N* Z& Pint port = param(2);8 V% X8 e# b8 _; I
* N4 j# A. T- Z+ S
Object involved = item;
& g3 S9 E  I3 p# a/ z) x" L6 s& O; P' O- v% j
string labelVal = getlabelstr(involved, "Rotation");9 b  D0 u# S7 q2 A  m

( O8 B( Q+ l- Eif(labelVal == "xRotation")  t4 E- \, s1 Z1 C/ Z4 F
{+ R. Q' j; {2 [
    return 1; // Divert the item to port 1& @+ p# G  J+ A6 t" F  H* A( G
}
6 ?* \6 V/ [* @: E8 Xelse if(labelVal == "zRotation")
" }8 w0 v- l9 S* v{
9 T$ [3 P8 s; V# h* M: P5 ]    return 2; // Divert the item to port 2
& }- K3 e5 u. z1 r}
  I; ~" {/ n& }, @else if(labelVal == "xzRotation")& Y0 x% _& ~, L, C3 m6 r  {) s9 i
{& Y1 I( l" B8 J- W7 n! m
    return 3; // Divert the item to port 3
7 x. o  ?. C' i; q}
* H2 U2 k# t& a# n0 uelse if(labelVal == "noRotation")1 a+ M( y& d$ G9 ^) |! s
{# C1 v3 v: B9 [+ b
    return 4; // Divert the item to port 4
9 _$ T% z( {. h+ _}
: o$ x: ~7 r' B$ Z+ T; ?  U4 S8 i/ P) i/ a9 w7 j
模型附上:
: ]" @! B2 |5 ~! r9 w

本帖子中包含更多资源

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

x
2#
csn-support 发表于 2023-12-13 09:58:25 | 只看该作者
在pf中没有对四种类型的标签赋值,需要赋值以后再进行判断。
3 ?0 k6 X6 X6 y+ c0 V0 \0 a' \( x

本帖子中包含更多资源

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

x
3#
 楼主| 廉梦华 发表于 2023-12-13 11:53:51 | 只看该作者
csn-support 发表于 2023-12-13 09:58/ c2 o- Z* s0 X' K2 J' s
在pf中没有对四种类型的标签赋值,需要赋值以后再进行判断。
# x- d% i; J9 k8 \1 l/ R
谢谢!谢谢!十分感谢老师的指导,
4#
csn-support 发表于 2023-12-13 12:07:11 | 只看该作者
廉梦华 发表于 2023-12-13 11:53
$ @8 \7 U5 B+ W. l" @. E谢谢!谢谢!十分感谢老师的指导,
8 {2 v) j- ]7 `$ ~) R
直接读取标签也可以,不过要记得加上token./ g1 z; v4 w4 Y( ~

本帖子中包含更多资源

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

x
5#
 楼主| 廉梦华 发表于 2023-12-13 13:40:55 | 只看该作者
csn-support 发表于 2023-12-13 12:07# Z; `; x% b" g8 S( U- g
直接读取标签也可以,不过要记得加上token.
5 ^6 k0 {& d% D' f1 d
感谢老师的指导
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2024-4-30 08:03 , Processed in 0.061204 second(s), 14 queries .

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

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