设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 8983|回复: 1

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

[复制链接]
发表于 2008-4-10 16:36:43 | 显示全部楼层 |阅读模式
我的模型,原意是使得每五个turtle成一个矩形,这些矩形随机散布在一定范围内。
5 j* w# e) z8 s# I5 Q+ c
- r# d* H) m- t* Y0 ^但是运行结果所有的矩形重叠在一起,只显示一个矩形。请大家帮忙看看。
* a- P) Y; X9 o- C$ J4 q' Z
8 C, F$ ~- ~; A- l1 z& Q* cturtles-own [a b c d k f g h
! R& o! g; L: Q: o* G0 I' I. d! I) h  x y     ;; these are the leaf-turtle's offsets relative to center-turtle & c5 `/ S, K+ W
]( K- B& G' ^; p! M: \: ^
to new' ^0 K# x3 \: n" N/ X
  ca
; t( ]" _, [" D. X- N& F  crt 5 * num_of_building
( I2 H* n/ H8 Q* U- J% ]- H2 O8 b  ask turtles [ifelse (remainder who 5 = 0) [set color red][set color blue]]& W2 Q* z) p  T% D$ f6 G
  scatter     ;;keep center-turtle random positions ; q, i. W' j; y0 a
  unit_plan   ;;make up the building plan
; B7 u9 P$ n/ t0 r1 C2 Zend
, S/ q* v7 {3 J) c* p6 |4 Qto scatter
2 _; [. I6 `4 Dask turtles with [remainder who 5 = 0]( X: E) U8 K' }7 C
[
5 b# f# z; Z5 J, N1 r4 Xset xcor xcor - 6 + random-float 15! P' C0 V2 f3 f' Q
set ycor ycor - 6 + random-float 15/ W/ w2 g: d/ W( k* J0 {
]8 i' O7 v  Z% A' L8 ]
end3 e" g+ S* ?4 W; P( p
to unit_plan & H, T' k: S  i
ask turtles [% I& i3 \7 m2 b: H1 C
if (remainder who 5 = 1) [set a who " ?5 }, k  h8 y3 C9 a; B9 W5 O% D
                          set x ( 0 - Wid / 2 )
& |) u/ M) W0 B7 z4 ?9 C                          set y  Dep / 2 ]7 C  V# V, j% ]0 a* D+ n2 O4 u
           set b  int (a / 5) * 53 b1 p' Z6 s: w  Q5 K
    setxy ( xcor-of turtle b + x )- \; m* U" I; T9 T0 e& _
          ( ycor-of turtle b + y )7 s! B1 R  P! D" ~( V# h5 k
if (remainder who 5 = 2) [set c who
- q6 ^: u8 U, |+ w                          set x ( 0 - Wid / 2 ) 0 _( M0 x9 t2 B# F% W; Y" L
                          set y (0 - Dep / 2 )  ]% h" r: L; E) r6 c% V* `
                          set d int (c / 5) * 5) X6 l2 Z8 f; R' l
   setxy   ( xcor-of turtle d + x )
# ~, Q7 j3 y; k, G, O) G7 g           (ycor-of turtle d + y )
6 X- ?+ ^. b+ `         
; c6 z- c& `$ |' R9 }  Q" B7 I              I! _; F+ o$ m$ |. g
if (remainder who 5 = 3) [set k who
2 E9 c9 U4 E% n) V6 Q1 w% m                          set x( Wid / 2)  
6 F9 x, e; g* [7 z6 V" q                          set y (0 - Dep / 2 ) ]+ k* o8 }) w" k- M7 c0 R% z2 J" S
                          set f int (k / 5) * 5" [; j  A4 Z5 Y* S. L6 ~
  setxy   ( xcor-of turtle f + x )7 B% N, }$ H% y4 L6 v
           (ycor-of turtle f + y )
( o0 H3 T! T, X' G" C6 e9 x           
3 H) ?/ [, n3 |+ U7 y9 L# }! @           
% g, ~4 b! x$ Aif (remainder who 5 = 4) [set g who+ G+ i+ T6 D1 {7 G  J
                          set x Wid / 2 ( F6 k9 Q) }7 `8 S/ Z3 y* V
                          set y  Dep / 2 ]0 O7 |8 l. K' f* v+ z  b
                          set h  int (g / 5) * 5. D3 K9 c) L5 R  @+ X# N5 K
  setxy   ( xcor-of turtle h + x )
5 q' \/ R# S- c/ I7 F0 i" x           (ycor-of turtle h + y )
$ [1 Y% N5 s% u4 n& ?# p                          6 I" K2 O0 b9 H+ a! i
                          $ B$ {( x" Q0 `8 ]7 o  U; D
                          ]
4 C$ X* a3 `* c. H7 Yend% w, `+ R& |2 o' C' f1 Z
% ]+ |# [4 ^1 e. X; O( n
[ 本帖最后由 etamina 于 2008-4-10 16:41 编辑 ]

本帖子中包含更多资源

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

x
 楼主| 发表于 2008-4-11 13:26:12 | 显示全部楼层
已经解决了,
7 Q, n& Z/ E& y: v) B8 [应该是/ Q( ^7 S1 C/ k3 j$ S& L
ask turtles [
" G* K: I) t7 I( z/ ]  V& Xif (remainder who 5 = 1) [set x ( 0 - Wid / 2 ) 9 n+ |. R& ^- b/ m7 V
                          set y  Dep / 2
; U7 j( |. _! R. A$ Q# z           set b  int (who / 5) * 5" C5 g( e( o' o9 M! V" |
    setxy ( xcor-of turtle b + x )0 c% `- ~! j$ [1 P: U" r' E. [- w
          ( ycor-of turtle b + y )]]- q: o7 R- |" v/ o3 ?4 F
end
  r  ^0 |: \8 z: I2 ]6 B4 S之前有个括号位置不对没发现
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-9-2 08:03 , Processed in 0.026825 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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