设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7593|回复: 1

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

[复制链接]
发表于 2008-4-10 16:36:43 | 显示全部楼层 |阅读模式
我的模型,原意是使得每五个turtle成一个矩形,这些矩形随机散布在一定范围内。
! w+ W# S5 y0 {. y. {) l1 q) t1 Q
0 e. N& G- p" B$ r2 |4 u但是运行结果所有的矩形重叠在一起,只显示一个矩形。请大家帮忙看看。/ L% z% C+ t$ j: M7 y
+ N: D/ x9 V( _  L
turtles-own [a b c d k f g h
& [' Y/ U  m& }9 H* g  x y     ;; these are the leaf-turtle's offsets relative to center-turtle
! [, |8 z3 g2 n+ [+ }]
8 J  M% Q1 R2 v1 Sto new5 m# R! H7 s$ V, q
  ca
- g  O& W3 e) u: P  crt 5 * num_of_building+ j7 I/ p7 u4 g# `9 j* F
  ask turtles [ifelse (remainder who 5 = 0) [set color red][set color blue]]. Q( f! v( _8 f( T
  scatter     ;;keep center-turtle random positions / |' S4 ]3 H! S& d: S
  unit_plan   ;;make up the building plan: M  I2 R2 e0 w$ \$ t! c
end
3 }' x) D  ?  J: ?7 pto scatter
6 S, [4 c0 e" v$ [ask turtles with [remainder who 5 = 0]4 n. C" U' C6 s% k& e8 c
[+ ^" j& }4 U: g& g
set xcor xcor - 6 + random-float 15( [8 g) ?7 @; g
set ycor ycor - 6 + random-float 15
& K, V: @! j( A: `  |; \* t0 []
0 B/ }8 g, k9 o* r- Iend
4 m9 F5 R( P+ B- i. ]* M6 s" U; l3 xto unit_plan
* D  g- |1 g1 z9 u2 Y6 [ask turtles [# C% p5 ^/ \0 ]2 Q
if (remainder who 5 = 1) [set a who
3 y: A/ r5 L. y$ z( W                          set x ( 0 - Wid / 2 )
9 ?; X' L# ^& N: `2 P; k                          set y  Dep / 2 ]
5 _* }7 H$ L/ y) K' t8 o           set b  int (a / 5) * 5# D$ w, F' U0 o, v
    setxy ( xcor-of turtle b + x )
; f) ]' a: y7 ^          ( ycor-of turtle b + y )
5 ]  S  u1 r4 a9 |6 \if (remainder who 5 = 2) [set c who0 o' F2 O/ f$ b: ?
                          set x ( 0 - Wid / 2 ) 1 T- R; M& i; v5 X
                          set y (0 - Dep / 2 )  ]# L' C3 r% s0 F! I2 U
                          set d int (c / 5) * 5, }( [+ r; c5 }; C2 A
   setxy   ( xcor-of turtle d + x )- N: \- d; j, }4 Y6 N
           (ycor-of turtle d + y )
+ U/ }- {  C0 o6 h* g8 Y. R# x         
% C4 l3 w) M4 T# |; f            
4 `4 @6 `* P" v; B# q8 V. v# oif (remainder who 5 = 3) [set k who
. M5 [% x  Q, Y4 n) X3 v                          set x( Wid / 2)  / r3 x  M& V) h, H  a
                          set y (0 - Dep / 2 ) ]
+ W* T% J, R0 x! \. L                          set f int (k / 5) * 5
8 f+ D9 w+ F* n  setxy   ( xcor-of turtle f + x )
/ c6 n  `2 C- w8 F$ J; r           (ycor-of turtle f + y )
& t! b. l- c5 r7 C3 W* ]           1 S8 d+ ?# f  ~: j" u) k% }
           
2 F+ i1 M; I1 o1 y& O7 Vif (remainder who 5 = 4) [set g who
' j% \& D" ]6 ?- o                          set x Wid / 2
8 d+ r: m% C9 Z0 C* y! T, j                          set y  Dep / 2 ]# g  T. ~0 Y$ k- A! z
                          set h  int (g / 5) * 5
1 V6 {4 F9 ~* K  setxy   ( xcor-of turtle h + x )
% I; N' z4 `$ P# g6 M! C2 t4 E           (ycor-of turtle h + y )
5 F& `% O5 T* [& C, k4 E                          ( ]& Q) h4 s2 N; ?- Q% d2 {
                          
+ v& ~9 H9 g/ z                          ]
! s0 D& L' u. n" yend+ w: C1 T4 ?+ C7 E6 d  W
7 H! c( d) I5 Q% _
[ 本帖最后由 etamina 于 2008-4-10 16:41 编辑 ]

本帖子中包含更多资源

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

x
 楼主| 发表于 2008-4-11 13:26:12 | 显示全部楼层
已经解决了,) \+ J6 s! ?) g6 E8 C$ [
应该是
5 L$ ~5 ~5 k' `0 ]8 x: P, Yask turtles [1 f8 k0 Q2 _* X8 s  f, l
if (remainder who 5 = 1) [set x ( 0 - Wid / 2 )   `7 t/ Q0 v% c4 z3 ~" _
                          set y  Dep / 2
. N' x0 w7 }* }( A2 F1 p           set b  int (who / 5) * 5( X8 _+ `& ?. q) j( D" U0 m' s8 C* {
    setxy ( xcor-of turtle b + x )& G" m, ]- r4 Z; t
          ( ycor-of turtle b + y )]]
, s  [9 n0 m: _4 u- m* s0 ?3 k  Pend
) a3 p- i6 u9 Y$ K1 F6 Z之前有个括号位置不对没发现
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-3-2 20:19 , Processed in 0.016290 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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