设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 8417|回复: 1

[交流] 看看这段代码的问题

[复制链接]
发表于 2008-4-10 16:36:43 | 显示全部楼层 |阅读模式
我的模型,原意是使得每五个turtle成一个矩形,这些矩形随机散布在一定范围内。" i. z; T8 Z# Z! R
) j$ z' h2 z( `5 R: \
但是运行结果所有的矩形重叠在一起,只显示一个矩形。请大家帮忙看看。, j. d, O7 n4 W; v# N' F" t* ^

  W1 G+ E. k# ?$ l/ Uturtles-own [a b c d k f g h: s& z) Q2 t9 N+ B( `. a
  x y     ;; these are the leaf-turtle's offsets relative to center-turtle 7 V" h. ]" r0 R
]7 y& ^) e6 k, A% G9 s9 E5 s7 J
to new
1 O& {! A7 h+ H; E- B6 _# \& j  ca
' m; h/ G0 v, E! C' J) U1 O$ k  crt 5 * num_of_building* C& J- ^% Q( ~9 x2 O
  ask turtles [ifelse (remainder who 5 = 0) [set color red][set color blue]]
8 v4 y  f5 m% k! S. m  scatter     ;;keep center-turtle random positions
! z! I9 X+ G; n( H- V3 P* G  unit_plan   ;;make up the building plan' I4 O/ o  ^9 [* f
end
) o% u) f& s2 ?' L. c9 P* |! n* lto scatter
3 A- I. N4 r2 X& K. U  g6 t9 [7 ?ask turtles with [remainder who 5 = 0]
0 X! o4 ]* O$ z, l( Q+ _[
# |0 c( T8 L$ [" ]6 u% gset xcor xcor - 6 + random-float 15, A: E7 n3 ], Y
set ycor ycor - 6 + random-float 15/ S. m* u: M& c8 [* k+ J4 t+ M, ?$ i
]
( L  }$ v$ G5 n3 F& mend
- V/ G8 }& {4 {! H# c/ uto unit_plan % @9 o" M! Q4 S7 p" K! G
ask turtles [) l5 r: [% N6 W6 u
if (remainder who 5 = 1) [set a who
, V1 E: T1 s' N8 q8 y                          set x ( 0 - Wid / 2 )
5 ]( p; m0 X$ V, M# L                          set y  Dep / 2 ]. p$ l( K& s3 y
           set b  int (a / 5) * 5) |, R5 X9 z! f8 f5 Z% X
    setxy ( xcor-of turtle b + x )
2 ~; g. j1 n1 v( e          ( ycor-of turtle b + y )
- V+ ?5 N+ Z0 [; |; ]7 p2 vif (remainder who 5 = 2) [set c who' I1 P  ]* X% x1 b' V) W) {. n0 L8 ~
                          set x ( 0 - Wid / 2 )
+ @  R) F" L' Q0 z                          set y (0 - Dep / 2 )  ], _/ v  M) o% I! v
                          set d int (c / 5) * 56 S: m, V0 Q# S2 ?1 @: \
   setxy   ( xcor-of turtle d + x )$ |1 U/ e2 @( v( u
           (ycor-of turtle d + y ) / q. X, P, e% L" d/ ]- B1 z& H
         
, Z* I! B6 }% N/ C# m& v7 d            2 r' G/ T) `  B) x9 {  g+ M; q/ z8 Y
if (remainder who 5 = 3) [set k who; U! d0 w* M7 g7 q/ w
                          set x( Wid / 2)  2 G8 H) X1 F* P5 F  n8 n
                          set y (0 - Dep / 2 ) ]
- _4 U- Y' t4 ^3 [                          set f int (k / 5) * 5$ S! X% y/ J4 B' V. [) E6 b$ z# L; g7 l
  setxy   ( xcor-of turtle f + x )3 _9 x. T4 F/ J  Z# O' E; b( m
           (ycor-of turtle f + y )
+ m7 G" O, R$ ~' c+ F- c, a2 k           5 V5 L7 i* w. f! G. V
           
5 b: d, i4 [' d5 Mif (remainder who 5 = 4) [set g who! z0 e: Q; y  ?3 N8 \" L
                          set x Wid / 2 $ _. o6 ?6 L( ^+ B: Q8 L+ c
                          set y  Dep / 2 ]' Z7 J' J$ X. `! \
                          set h  int (g / 5) * 5
8 S  X3 ?  M6 k, b  setxy   ( xcor-of turtle h + x )
  e2 @% l! ^; a+ x1 ~           (ycor-of turtle h + y ) 3 `9 O- O! y- \  A
                          9 t5 Y  W6 d& d  S) R1 _7 c6 v" H
                          
& h/ G( U! m5 d8 I$ A! L. a                          ]
) g  i$ |$ P  }$ Y6 |7 yend  P, {; z/ s) q- P9 H
" }7 x8 }5 B- n7 T2 w
[ 本帖最后由 etamina 于 2008-4-10 16:41 编辑 ]

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
 楼主| 发表于 2008-4-11 13:26:12 | 显示全部楼层
已经解决了,2 g+ N& m. k" h8 P- X' a' w+ @
应该是
, Z' D  h  W* ?% i8 a; Task turtles [
7 u) @' H7 f; [& Q& xif (remainder who 5 = 1) [set x ( 0 - Wid / 2 )
+ }5 y' R& e  u- ^" x; r                          set y  Dep / 2 " C4 F$ r, j% W6 G
           set b  int (who / 5) * 5  v/ z5 @) Y+ \+ X4 q/ c$ A5 \
    setxy ( xcor-of turtle b + x )
, O& W8 l' h# ~+ P          ( ycor-of turtle b + y )]]2 R4 ]/ @! D! g  w. X% m# R
end
! ]- ~* Q, J0 l$ a$ \9 R之前有个括号位置不对没发现
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-6-23 20:55 , Processed in 0.016389 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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