设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 6950|回复: 1

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

[复制链接]
发表于 2008-4-10 16:36:43 | 显示全部楼层 |阅读模式
我的模型,原意是使得每五个turtle成一个矩形,这些矩形随机散布在一定范围内。
5 Z8 m% n* I) L- L
* T  H3 o+ |' a1 Z- K# R但是运行结果所有的矩形重叠在一起,只显示一个矩形。请大家帮忙看看。
* \' o9 G* T, {) H8 b' J+ K, f. _$ V5 C( u
turtles-own [a b c d k f g h
/ n$ w7 P( {. l. o& ~% O, G- G  x y     ;; these are the leaf-turtle's offsets relative to center-turtle 7 _$ e' g3 z$ y; |3 q6 M
]
# a$ W" D# j% `6 P0 F1 H1 l- Fto new% U7 [! O- s; }9 A8 X
  ca
* y( R9 D$ D  I5 W/ ^  crt 5 * num_of_building$ |! P, s( M9 i- O* }
  ask turtles [ifelse (remainder who 5 = 0) [set color red][set color blue]]( P/ n' z4 h; e4 X- o5 R
  scatter     ;;keep center-turtle random positions ) b2 B$ \! J# n2 H$ t' Z' }, S- x
  unit_plan   ;;make up the building plan' w# E  w1 i8 }, p. v/ _
end
7 u+ _+ f1 ?4 {7 p) I9 }5 e: ]: Sto scatter' R5 ?$ l' J0 K4 [0 \6 V
ask turtles with [remainder who 5 = 0]- |/ F* }7 v3 Z
[
1 f9 q4 D7 ~! Uset xcor xcor - 6 + random-float 15
$ }6 y3 ]9 O) v8 ?* }9 `2 b; gset ycor ycor - 6 + random-float 15
9 f: @/ ^, m) Q: a& h6 I. A8 m]5 h9 o% i0 B! S' t/ l& X" R
end
8 X: b- g9 T3 v3 b1 P* Yto unit_plan
; s4 S5 E$ u5 ^$ I: `9 h* ~ask turtles [* |, b: T! r7 T$ o, \
if (remainder who 5 = 1) [set a who
6 s* M6 p2 F9 w' p, j                          set x ( 0 - Wid / 2 ) . ~8 q3 c9 o5 V0 \6 D( n
                          set y  Dep / 2 ]+ s1 g' v$ _0 ?, J! D
           set b  int (a / 5) * 5
5 o8 S, a. V1 A/ U    setxy ( xcor-of turtle b + x )) }( N% f, d0 r( U& D. Q
          ( ycor-of turtle b + y )8 ~; l1 R- a7 x! d9 R( p
if (remainder who 5 = 2) [set c who/ @( `; r( I& g. a# c  d
                          set x ( 0 - Wid / 2 ) / H" Z, O% k. a  ]2 c
                          set y (0 - Dep / 2 )  ]
) P$ I" s4 g. O" a/ d. s                          set d int (c / 5) * 5
- p- D5 j. P; m' c+ b/ Q   setxy   ( xcor-of turtle d + x )6 O$ f  n- R" \' g# w; R6 j7 g
           (ycor-of turtle d + y )
# \7 w8 G8 `  b+ ?  Z% {  `          2 g) Z* h% R6 e7 L4 `0 Z
            ! l, F% T4 F  j1 c
if (remainder who 5 = 3) [set k who- v3 O6 f0 P1 |% s! O: v" A
                          set x( Wid / 2)  
4 V* v% ~' B9 f4 ?: g1 i                          set y (0 - Dep / 2 ) ]9 T( Z8 @2 |: o3 }, d" `5 m6 O* [
                          set f int (k / 5) * 5
! f- Z0 q* q! [; q7 {* A4 |  setxy   ( xcor-of turtle f + x )0 k+ n- M$ s- a, ?6 j4 L% O. ^% f
           (ycor-of turtle f + y ) 8 i- N6 g8 n% |! K  }" y
           
; {4 n  c9 i  p/ j/ d! J# c  W% `           " z+ |5 x3 I( F7 E
if (remainder who 5 = 4) [set g who
/ M) B) n7 ~: x5 t5 `                          set x Wid / 2 0 ]) }& i( }8 i
                          set y  Dep / 2 ]
! z1 i6 t  o- U, g5 z% @. Q                          set h  int (g / 5) * 5
4 m& I: y- h5 K$ l$ ^7 [( ^$ n  setxy   ( xcor-of turtle h + x ). I0 {: ^% j, y. k5 X5 b/ h' y# M
           (ycor-of turtle h + y )
' F. N3 a& H1 |                          
' ?) ^) \& e; r* e- ?                          ( ^/ q  r& y/ r8 t
                          ]6 _; \& U2 I. D4 z( K
end
5 b4 d% `8 w8 M1 {8 H% M& P: `0 [; j5 h9 T1 Z/ h
[ 本帖最后由 etamina 于 2008-4-10 16:41 编辑 ]

本帖子中包含更多资源

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

x
 楼主| 发表于 2008-4-11 13:26:12 | 显示全部楼层
已经解决了,
/ d! i1 F& U8 N5 Q( q. M应该是
% R1 ]2 d1 r7 _0 fask turtles [
5 V% F7 E  x( z  B1 k2 Iif (remainder who 5 = 1) [set x ( 0 - Wid / 2 ) - H: M; D6 e5 d( X
                          set y  Dep / 2
! G4 B7 ?: ^6 a( M4 T/ i           set b  int (who / 5) * 5
: u( T% y4 ~: C  h4 p3 K& x    setxy ( xcor-of turtle b + x )- f/ V5 N% y6 b8 l+ i
          ( ycor-of turtle b + y )]]
& l+ C" ]1 R& `end3 ~7 v- H, h/ V3 X
之前有个括号位置不对没发现
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-12-13 14:20 , Processed in 0.020056 second(s), 16 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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