设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 3156|回复: 1

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

[复制链接]
 楼主| 发表于 2013-3-4 10:22:38 | 显示全部楼层 |阅读模式
请教关于PortalCrane的问题,实在想不明白。发现placeIsFree调用的一个问题:当通过PortalCrane的Strategy下的自定义可利用位置(Define your own method for searching an available location)时,自定义程序为:
8 E& z2 ], W( _$ K(byref x1,y1,z1 : integer; part : object) : boolean7 v  b- N" G9 J
is
5 E5 S* T" Z" c' X        i,j,k,w : integer;
! T+ ^% X- c) ?$ G9 L- K+ q0 Sdo
& c6 a) N, f5 D: j        for k := 1 to Crane.getStoreZDim loop  S! X# ?/ {4 L8 ^+ X& N1 ?, S
                for i := Crane.getStoreXDim downto 1 loop
  ^: u3 H5 j  ]                        for j := 1 to Crane.getStoreYDim  loop1 W- u& h5 z4 P; J% I' s8 F
                                if Crane.placeIsFree(i,j,k) then3 ^) k. M- O. L7 c9 U9 Y" V) a% s
                                        x1 := i;. Q' W6 R* W/ M+ L: D: S; |
                                        y1 := j;% ~: y( F$ U' y! B
                                        z1 := k;+ k- T" \6 K9 o0 E* _- N& b3 p
                                        if Crane.placeIsFree(14,1,2) then
/ X0 [; R( H5 H8 G+ d9 @% J0 Z                                                w:=1
. N$ n5 Q4 Y5 m0 Z) n  n4 r" K                                        end;0 ]& P* k# c4 d6 X; Q0 i9 X* Z
                                        return true;
9 D; X) u( R' l+ j1 C& m7 K5 g                                end;
$ A- Z  p( e; C; A3 d                        next;* _1 n% n& w9 c% ]2 L
                next;/ f0 Y9 f8 K. x* f& b5 Y
        next;( V/ [& B  [( S9 p& }( e+ X; d
        return false;6 _" Q, e4 c  W5 }7 A0 {0 o
end;/ u' `! h% K, n9 S  u4 Q
  判断的位置(14,1,2)的Free是True;而在某个程序中直接调用placeIsFree时, 判断的(14,1,2)的Free是False。保证两次判断位置(14,1,2)一直没有被占用。想知道是什么原因?placeIsFre方法到底该如何用?请求赐教?% U6 d1 E3 x) w2 j# W' V2 O
发表于 2013-3-4 21:40:37 | 显示全部楼层
你调试一下吧,看下i,j,k的值,肯定不是你说的什么14,1,2,不可能出现在同一个方法中输入相同输出不同的情况。0 d( V6 y; S0 |8 Q
从目前你的方法看,当两者不同时,PlaceisFree(i,j,k)为真时,PlaceIsFree(14,1,2)可以为假的。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-12-28 05:12 , Processed in 0.017283 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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