设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 2795|回复: 1

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

[复制链接]
 楼主| 发表于 2013-3-4 10:22:38 | 显示全部楼层 |阅读模式
请教关于PortalCrane的问题,实在想不明白。发现placeIsFree调用的一个问题:当通过PortalCrane的Strategy下的自定义可利用位置(Define your own method for searching an available location)时,自定义程序为:
2 ~( @5 X+ D( V/ F/ H(byref x1,y1,z1 : integer; part : object) : boolean
5 O4 J+ M6 x% h- Dis# U6 n' x: W/ x5 g9 |3 [
        i,j,k,w : integer;
4 `6 ~; {6 r. j* \do' t) ~: v! D# _8 D% O$ Z5 h
        for k := 1 to Crane.getStoreZDim loop3 h1 d3 f+ n; L4 y% |) Q* ]( h) b" M% ?
                for i := Crane.getStoreXDim downto 1 loop
: ?# G4 L: G6 l0 t/ N                        for j := 1 to Crane.getStoreYDim  loop
/ o6 T8 [3 ^+ T3 q2 W                                if Crane.placeIsFree(i,j,k) then# _; J) z% |) K  b! ]+ C( `
                                        x1 := i;
( O2 _- C# `- H6 |& l4 \                                        y1 := j;& ?$ T% V! a- e3 `
                                        z1 := k;& w, ~& W: }, k: E6 G5 u  q
                                        if Crane.placeIsFree(14,1,2) then
! {$ E) F' Q, r+ K9 E8 \. y                                                w:=1% S; o* U' H2 Q5 ~
                                        end;
( B& U- t( I0 y2 {                                        return true;; n! P8 _: u/ X* m3 U* z5 ~
                                end;
3 q" Q' X; p: C5 u0 U" @                        next;6 Z% H* d; i* U4 t+ u  h
                next;
$ v+ }' R9 u, {% G) F& r        next;! f: B8 m7 a% N& P
        return false;
( w8 j$ t" n! J, kend;
6 f" Z3 Q/ N: h# y. X& M  判断的位置(14,1,2)的Free是True;而在某个程序中直接调用placeIsFree时, 判断的(14,1,2)的Free是False。保证两次判断位置(14,1,2)一直没有被占用。想知道是什么原因?placeIsFre方法到底该如何用?请求赐教?
2 D  X! [8 g: \" J2 x: |  }  f
发表于 2013-3-4 21:40:37 | 显示全部楼层
你调试一下吧,看下i,j,k的值,肯定不是你说的什么14,1,2,不可能出现在同一个方法中输入相同输出不同的情况。( l8 i/ I, D+ g1 D0 R% X
从目前你的方法看,当两者不同时,PlaceisFree(i,j,k)为真时,PlaceIsFree(14,1,2)可以为假的。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-10-14 00:24 , Processed in 0.017330 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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