设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 6273|回复: 9

[求助] 如何同时移动store中多种品种entity的不同数量

  [复制链接]
发表于 2011-11-22 13:35:12 | 显示全部楼层 |阅读模式
如题,即如果store中存放有4种entity分别为part1,part2,part3,part4,每次需移动数量分别为4,3,1,1。按下面语句是否可行,不知道怎修改,或者类似语句该如何编写,向大家求救。% @5 B* c6 K' B# c+ w3 ]
is + x* @9 X( H& [; m
        a,b:integer;
  y8 h' J9 p! D( L% hdo- q# p' r% H2 y1 `
        if store.cont.name="part1" then
. l( ?; Z, Q4 J$ e( C+ i/ ^                for a:=1 to 4 loop, R) r8 @6 M/ y( L0 F# A' Q5 x$ E: s
                        store.cont.move;
$ R( u& p" q1 [# u                next;! `9 H6 ]2 o/ E0 g8 C; J* U
        elseif store.cont.name="part2" then
4 A4 v& `) Z) I1 |: b) p                for b:=1to 3 loop
! v3 p* q1 I3 y  o. p2 k/ @" c                        store.cont.move;  X9 ]$ Y* C! E
                next;
8 s, o' v  a& D9 P# {                elseif store.cont.name="part3" then
( J: q4 O2 x* s  B1 {* Q' j                              store.cont.move;; z+ I# y8 m; m( X& }2 v
                       elseif store.cont.name="part4" then
( |* r& B+ c$ ]9 e' x; P                                    store.cont.move;5 Y) P' o/ l! [, h# ]. g: V3 Y
                        end;
: ~! r9 N* |9 h           end;
发表于 2011-11-22 15:33:01 | 显示全部楼层
估计不行,可以将store看成为二维数组,然后对数组元素操作,而不能对数组名进行操作
发表于 2011-11-22 19:19:20 | 显示全部楼层
store.cont.这样只能访问Store的第一个位置,其他问题是不能访问的,如2楼所说,需要进行寻找,类似下面:
( M9 `2 B+ C# Iis7 K4 {; I8 [5 D! _$ E* A; @
        i,j:integer;
& K, b+ r: _" x; e( F0 I( t" h1 _' t+ Udo4 d; i. I6 _/ E5 N1 v. w! _6 v
        print store.cont.name;
( G+ B: g2 N9 I        for i:=1 to store.ydim loop9 x) e( P0 X' U
                for j:=1 to store.xdim loop
. n! N* h2 `/ V& X' Q  O) @                        if store[i,j].cont/=void and store[i,j].cont.name= "" then
5 D  b7 T( H: q1 r, V4 {& w/ g                          -------------------
: e3 B% U5 c/ e4 u0 `; ~, z0 g                        end
" V7 G- z, d' H6 K6 s6 p' _                next;: |+ L" A$ F, P" N2 B6 T0 Y
        next;
# T0 t9 X) g& o5 Q6 z$ |1 g  {end;
 楼主| 发表于 2011-11-23 13:43:26 | 显示全部楼层
dongshui8558 发表于 2011-11-22 19:19
# b2 g# c5 }' \; E7 Ystore.cont.这样只能访问Store的第一个位置,其他问题是不能访问的,如2楼所说,需要进行寻找,类似下面:
' F/ B8 `0 t8 h" S: i1 z/ d ...

0 O: z5 J$ H8 j3 Y恩,谢谢您的解答,对我很有帮助。
9 |  j' A3 t3 i! S  x想再请问下,如果每次移动四种物料作为一个操作过程,以后没间隔一个小时操作一次这样的循环(即每隔一个小时移动四种物料一次,所移动的物料数量最终是成比例的),要怎么弄呢?
发表于 2011-11-23 14:04:11 | 显示全部楼层
dongshui8558 发表于 2011-11-22 19:19 , _3 _) H) [, M& T# E  N
store.cont.这样只能访问Store的第一个位置,其他问题是不能访问的,如2楼所说,需要进行寻找,类似下面:
. N3 W; p9 E# R) j6 X1 O% Z7 l2 w ...
$ D/ m3 I  w* j
你就是我心中的神,论坛就应该多点您这样的人。
发表于 2011-11-23 14:07:43 | 显示全部楼层
用编程最简单,用methcall方法,自己看帮助吧,能看懂的。。
 楼主| 发表于 2011-11-23 15:00:27 | 显示全部楼层
dongshui8558 发表于 2011-11-23 14:07
) w# {" x! I+ |; R0 P用编程最简单,用methcall方法,自己看帮助吧,能看懂的。。

) M# a: E8 i2 S是这样吗?
% L7 M' y  Z4 O3 r. eref(moveout).methcall(str_to_time("1:00:00"));1 {5 }$ G0 \# y1 D, E, {
运行不出来啊
发表于 2011-11-23 18:15:29 | 显示全部楼层
ref(moveout)改为self
发表于 2011-12-1 10:35:29 | 显示全部楼层
dongshui8558真是高手啊,留个QQ吧?
发表于 2011-12-20 14:50:42 | 显示全部楼层
我想问个问题,store只有入口控制,没有出口控制,那你的这段程序是放在入口控制的method里吗?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-10-22 15:12 , Processed in 0.018653 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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