设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 3412|回复: 2

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

  [复制链接]
发表于 2011-10-25 15:25:46 | 显示全部楼层 |阅读模式
我的模型中Mus在多个路段移动。在路段上需要随时扫描一些条件,并根据扫描结果执行相关的操作。不同路段需要扫描的条件不同,执行的操作也不相同。+ L  ^0 U1 j. {, @9 f5 V! j# S
我为MUs定义了method属性,在mus进入路段入口时触发method,并在method中让method每1秒钟自调用一次。
3 L/ x, @/ g& X' g3 |8 T但由此造成的问题是,mus在随后的过程中一直调用这个method属性。我现在是在这个method的最外层加了个判断,根据所处路段位置执行不同操作。  |; |2 \3 b' z% y; I9 i/ e) y
现在的问题是能否在mus离开路段时,终止method属性的自我调用?这样我就可以把不同路段的逻辑拆分到不同method中,method程序的结构更清晰,而且相应的计算速度也快一些。
4 ~- `8 i* B2 @6 u+ q先谢谢大家啦
 楼主| 发表于 2011-10-25 22:16:28 | 显示全部楼层
taoyifei2000 发表于 2011-10-25 19:11
$ U8 U) ]6 ?& v) i* C9 R0 A2 x& x学会使用deletemethcall命令,用法详见help,我实现过,可行的。
+ G. \. W0 v5 D# ?但是要注意和methcall命令的关系,最好把m ...
; }- b$ y4 z( G. ?
收到!非常感谢!
发表于 2011-11-25 20:16:29 | 显示全部楼层
本帖最后由 五五 于 2011-11-25 20:18 编辑 + ]6 Q# r( P2 y+ X$ |1 D# L
8 W$ u* b5 A9 i  t# @
while ture loop: e0 C$ S, G# h1 C% o
  if 未进入路段 then 7 U/ H$ j8 M5 l% n8 v6 e  @
    waituntil 进入路段 prio 1! ~, [% k' P, g, }0 o* S
  end " ~5 b/ H6 W: v  g' U/ K- G

- v% y* t$ W- z  L! I2 [5 F  if 不符合所有条件 then4 D4 z' p+ F7 |: T* W6 s0 J8 a( F; i  Y
   waituntil 条件1 or 条件2 or .. or 离开路段 prio 15 Q5 S  P7 I6 L# c' r& e
  end3 u: A. y' F6 T6 s% ?
% ]2 f/ P) @6 L. \2 D+ J6 @
  if 条件1 then / P8 E" _7 ~- W/ }! e$ A2 \0 G
  elseif 条件2 then% w$ }+ K2 d( }9 u) M
  ...* Z4 x1 M  }& }! {+ Z! {' p# R

2 }8 G2 X/ v; p/ @" h8 ~* Q0 h  elseif 离开路段 then
  w" o2 S3 `) q& j2 x     exitloop2 o7 Z5 }) [) m6 R4 d0 }
  end
' |5 |9 w. C" r, H" I3 S- dend6 k7 w9 K1 L; j( H" s

* P6 n; n8 f) W/ ]% s1 F希望有帮助~
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-9-10 19:43 , Processed in 0.016026 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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