设为首页收藏本站

最大的系统仿真与系统优化公益交流社区

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 3643|回复: 2

[求助] 如何终止一个MUs自身的method属性?

  [复制链接]
发表于 2011-10-25 15:25:46 | 显示全部楼层 |阅读模式
我的模型中Mus在多个路段移动。在路段上需要随时扫描一些条件,并根据扫描结果执行相关的操作。不同路段需要扫描的条件不同,执行的操作也不相同。8 T# P9 t3 t. g6 o+ u' M
我为MUs定义了method属性,在mus进入路段入口时触发method,并在method中让method每1秒钟自调用一次。6 B& L9 r" ]3 A+ E# _5 \( `( S
但由此造成的问题是,mus在随后的过程中一直调用这个method属性。我现在是在这个method的最外层加了个判断,根据所处路段位置执行不同操作。
* a' c, Z0 {* _. S$ |) F现在的问题是能否在mus离开路段时,终止method属性的自我调用?这样我就可以把不同路段的逻辑拆分到不同method中,method程序的结构更清晰,而且相应的计算速度也快一些。
# Q0 |! r( o3 g先谢谢大家啦
 楼主| 发表于 2011-10-25 22:16:28 | 显示全部楼层
taoyifei2000 发表于 2011-10-25 19:11
; ]) X+ d! a" R$ ^, p学会使用deletemethcall命令,用法详见help,我实现过,可行的。  m% v# }: T! {( t. Q- ?2 G
但是要注意和methcall命令的关系,最好把m ...

; ^/ v5 _5 |, a' w% O收到!非常感谢!
发表于 2011-11-25 20:16:29 | 显示全部楼层
本帖最后由 五五 于 2011-11-25 20:18 编辑 & k4 Q& I+ X! I$ ~& D
; J3 ~' S% J' q4 ]: |
while ture loop# E$ W$ l/ O/ ]/ B3 k
  if 未进入路段 then
/ q- F& Q" J1 n- y: e( W    waituntil 进入路段 prio 1; q8 E$ r' L. y4 q0 O) }4 p
  end
* e8 C; f# K! d, }& h2 I3 B' D# E, f
  if 不符合所有条件 then
. _- T: d/ f5 F9 d+ m   waituntil 条件1 or 条件2 or .. or 离开路段 prio 1
# Z, G# m3 Z' k' \6 w7 }  end
$ Z, g) \, J$ u4 H' Z; n; ~* K1 t4 I6 C" ?7 R
  if 条件1 then ! x5 D; f+ ?* W9 a3 G) C
  elseif 条件2 then
  e5 g: v4 K; |) j8 C. j8 e  ...
" W3 E$ T# j! [) w) @0 W
4 `* K% t$ q' K  elseif 离开路段 then
/ K3 J# u& J6 l' g     exitloop2 m* _8 B( M( _0 `5 v
  end
0 F* `) a0 R* H( j" }7 Cend
- e; u- |) K5 f& u  w9 n" a3 n
. |& M. }8 l  y# u希望有帮助~
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|Archiver|手机版|SimulWay 道于仿真   

GMT+8, 2025-11-6 03:58 , Processed in 0.018965 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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