设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 3539|回复: 1

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

[复制链接]
 楼主| 发表于 2013-3-4 10:22:38 | 显示全部楼层 |阅读模式
请教关于PortalCrane的问题,实在想不明白。发现placeIsFree调用的一个问题:当通过PortalCrane的Strategy下的自定义可利用位置(Define your own method for searching an available location)时,自定义程序为:
5 ^4 A$ n0 a6 m(byref x1,y1,z1 : integer; part : object) : boolean
9 H# U+ @0 S7 `3 w% x% ois1 [' v. p: M7 k7 Q- N
        i,j,k,w : integer;5 p3 r1 ]1 t' \- R# O+ E5 F
do) U/ G/ {% E4 n: P( w& D
        for k := 1 to Crane.getStoreZDim loop
* C! h- l% n- H  m" N7 o                for i := Crane.getStoreXDim downto 1 loop$ `( l7 G" i9 G* f
                        for j := 1 to Crane.getStoreYDim  loop4 u1 d1 G" i0 y* l( x$ M+ J9 U. a
                                if Crane.placeIsFree(i,j,k) then  u6 T. K* {) K0 E
                                        x1 := i;. H* s+ o0 |' X; a% _! S- ]& {
                                        y1 := j;
) `+ _. I" r  d; D                                        z1 := k;
" Q' J9 b, I' U( X$ m' [9 _% m                                        if Crane.placeIsFree(14,1,2) then
0 Q' y% z6 h& y5 |( k                                                w:=1
8 v$ |$ q/ B5 g# ~                                        end;( U" ]* J& f! @+ o
                                        return true;1 y+ I9 ~$ @8 m8 z; c. m
                                end;+ h. }& ?9 r: M# ?* e
                        next;/ D1 ~3 h0 F! I# m- @, b" c# w
                next;
7 @# J% E+ Z( [! F' U        next;
. C: ~  H9 K0 G8 Y1 u1 A" R1 t; D8 F9 ]        return false;
5 k: K2 N8 R6 _* l" [& S& D  \end;( S/ J! T7 }1 I. h
  判断的位置(14,1,2)的Free是True;而在某个程序中直接调用placeIsFree时, 判断的(14,1,2)的Free是False。保证两次判断位置(14,1,2)一直没有被占用。想知道是什么原因?placeIsFre方法到底该如何用?请求赐教?( |3 h6 e* c# T2 Q5 j
发表于 2013-3-4 21:40:37 | 显示全部楼层
你调试一下吧,看下i,j,k的值,肯定不是你说的什么14,1,2,不可能出现在同一个方法中输入相同输出不同的情况。% {( T/ l' n( M
从目前你的方法看,当两者不同时,PlaceisFree(i,j,k)为真时,PlaceIsFree(14,1,2)可以为假的。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-4-17 21:54 , Processed in 0.015936 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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