设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 2809|回复: 1

[求助] 请教关于PortalCrane的问题

[复制链接]
 楼主| 发表于 2013-3-4 10:22:38 | 显示全部楼层 |阅读模式
请教关于PortalCrane的问题,实在想不明白。发现placeIsFree调用的一个问题:当通过PortalCrane的Strategy下的自定义可利用位置(Define your own method for searching an available location)时,自定义程序为:
* g7 U  B  B/ b1 P4 Z(byref x1,y1,z1 : integer; part : object) : boolean
2 a+ C/ k+ P% w7 W1 yis% D) V  l8 x3 i
        i,j,k,w : integer;" n9 t+ D) D! L, n+ o. T4 e- T' D
do' l' L' z/ E. t! v$ ~
        for k := 1 to Crane.getStoreZDim loop5 s3 y: ^1 g3 F
                for i := Crane.getStoreXDim downto 1 loop, z. A0 G; D0 T3 g# d5 b3 f
                        for j := 1 to Crane.getStoreYDim  loop) s1 O: s$ o+ u2 x' l5 Z8 L- y) S
                                if Crane.placeIsFree(i,j,k) then
/ p2 A0 E' t2 q; O                                        x1 := i;5 ?6 s* w& v2 `/ Y% U1 \
                                        y1 := j;
- }3 s% F( e$ i                                        z1 := k;
4 @& D" k7 c/ R9 a                                        if Crane.placeIsFree(14,1,2) then( m! B* W+ E3 ~4 b9 F
                                                w:=1
" s6 f/ B1 C. M5 D! h                                        end;1 s- N. F9 j0 X4 `, [: U: |
                                        return true;
9 l3 I2 l5 s2 e& _( o3 R3 `2 I$ q                                end;
- k- [' ]# e$ n5 K6 @6 F7 R                        next;, t8 o' t/ k, b9 b9 b) ^- t+ Q) X
                next;
& R( b/ ~: e5 S/ r& D' V        next;2 L$ f2 G0 G, A$ @  R& o: X2 }
        return false;
' ?/ Z, l) ~( N. eend;
6 b/ y+ [0 `1 \/ q2 l+ j' D( B. o# f  判断的位置(14,1,2)的Free是True;而在某个程序中直接调用placeIsFree时, 判断的(14,1,2)的Free是False。保证两次判断位置(14,1,2)一直没有被占用。想知道是什么原因?placeIsFre方法到底该如何用?请求赐教?* B) t' g. f: y- z3 [: N9 G
发表于 2013-3-4 21:40:37 | 显示全部楼层
你调试一下吧,看下i,j,k的值,肯定不是你说的什么14,1,2,不可能出现在同一个方法中输入相同输出不同的情况。
9 ^6 N" u" F6 H从目前你的方法看,当两者不同时,PlaceisFree(i,j,k)为真时,PlaceIsFree(14,1,2)可以为假的。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-10-16 23:32 , Processed in 0.015741 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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