设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7099|回复: 1

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

[复制链接]
发表于 2008-4-10 16:36:43 | 显示全部楼层 |阅读模式
我的模型,原意是使得每五个turtle成一个矩形,这些矩形随机散布在一定范围内。
* Y& A6 D1 H- |- m7 ^- Q
& X4 O/ r& g/ j6 J5 e3 z6 t但是运行结果所有的矩形重叠在一起,只显示一个矩形。请大家帮忙看看。9 D( |$ A9 C/ d* S

5 P; Q* R: t) E. Z3 e$ Dturtles-own [a b c d k f g h" k& ?! p: V5 K% W& }! ]# b2 p
  x y     ;; these are the leaf-turtle's offsets relative to center-turtle
+ w. o. b8 j: [# E7 c  f0 h) @1 r]
6 v9 j% V3 _8 J5 ~4 G" ato new
, m; N- G- s' H. W1 Q, }" q  ca) Z2 E$ K! d. s' Z5 Y: L% L
  crt 5 * num_of_building
6 U( r1 C& L# B% |6 b: D  ask turtles [ifelse (remainder who 5 = 0) [set color red][set color blue]]
% f; O: M( T; D  scatter     ;;keep center-turtle random positions
. N% D0 Q2 E( k  unit_plan   ;;make up the building plan3 n* m; b. E6 S
end
% m$ |) w: S& `& y" oto scatter
, ?1 s5 c5 K$ Y! h6 Eask turtles with [remainder who 5 = 0]& S) r- K. d/ X
[
1 d2 ?9 _) J, J/ x& Y$ _( yset xcor xcor - 6 + random-float 15. _' N1 m5 q+ Z' i' ?3 x
set ycor ycor - 6 + random-float 15
2 O- T2 D' G! Z" T]$ W2 e' [& `# J+ f6 r3 Q1 ?
end3 m$ {& n: [! d% l8 [
to unit_plan
! D' |" |  U5 {  Yask turtles [
7 R" N: J3 h- xif (remainder who 5 = 1) [set a who ( F0 r# A/ H7 x7 }7 r! O" |! u
                          set x ( 0 - Wid / 2 )
* |1 N; k0 n) B  [/ d; G$ y                          set y  Dep / 2 ]$ b: j9 Y9 F6 t9 M
           set b  int (a / 5) * 5
# J0 \' {7 D  H; N8 E5 e    setxy ( xcor-of turtle b + x )
2 D4 L: \: z6 f- t4 f+ t3 z          ( ycor-of turtle b + y )
, r  }/ a; ~$ g: _if (remainder who 5 = 2) [set c who6 L' ~" |2 r& Q3 Z
                          set x ( 0 - Wid / 2 ) ( x9 \! F' C3 u" n: m
                          set y (0 - Dep / 2 )  ]
) o+ u) k5 v0 D/ D                          set d int (c / 5) * 5
, A7 [( G' ~, [) G   setxy   ( xcor-of turtle d + x )* b( s  M8 Q/ O4 ?
           (ycor-of turtle d + y )
! x8 q& r, p7 |6 {1 X& Q         
) ^- @9 @# K: p7 Y" |0 E            - I% F, g( o, V1 v2 {' [1 \
if (remainder who 5 = 3) [set k who2 [* q8 c) _2 k
                          set x( Wid / 2)  ' I# ?2 R7 A5 k) }
                          set y (0 - Dep / 2 ) ]
# `+ R, A# p: E. I& ~2 i  C/ w& q                          set f int (k / 5) * 50 i6 R9 R6 C; {' X5 V/ j, k
  setxy   ( xcor-of turtle f + x )
# B; f2 u+ M' u0 {( Z  W           (ycor-of turtle f + y )
9 r. u7 g3 h3 h, z2 J% \# K  X           
- P6 z$ x  |* J4 A           
4 r8 z6 S- V7 i9 @' y) `( Dif (remainder who 5 = 4) [set g who
/ r" Y# R, K3 r: u, I  L$ H                          set x Wid / 2 6 ?7 X2 f; F  r& H( L- Q1 f
                          set y  Dep / 2 ]5 B9 Y4 X% P$ W3 h5 h
                          set h  int (g / 5) * 5$ F/ `0 M# |/ G) ^0 ^/ Q  x! F, [" ~
  setxy   ( xcor-of turtle h + x )
: T  }* S/ P) B- p3 w5 @& v, W           (ycor-of turtle h + y )
6 p$ W3 k0 p1 @* C: {( o/ F                          
4 l5 A& o' X  s% b2 s  z3 R1 |                          
9 T2 _0 f, K3 S  L; c                          ]7 u8 N+ p, [" V! D& m
end
! ~9 C8 h) a6 r4 Y  Z7 I. m, A
5 O% \+ B& O8 F[ 本帖最后由 etamina 于 2008-4-10 16:41 编辑 ]

本帖子中包含更多资源

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

x
 楼主| 发表于 2008-4-11 13:26:12 | 显示全部楼层
已经解决了,
9 B: W5 b: Y. F3 f( H$ K" T" i应该是
* J* W- M  A' N( I5 m6 m& `+ o6 Iask turtles [
2 b4 ^; S8 D& A% x; hif (remainder who 5 = 1) [set x ( 0 - Wid / 2 )
' B2 L! a8 n9 u9 ~8 Y                          set y  Dep / 2
) j+ q8 P' j5 ?9 M3 a! u           set b  int (who / 5) * 5; x* L- [& ?* Y& u. u0 n& y9 V
    setxy ( xcor-of turtle b + x )
$ A" O) ]3 A+ m& ]3 ^* @3 w6 k          ( ycor-of turtle b + y )]]
7 F9 Z5 c# S3 l# c" Cend
* m; L3 y% a% M" G之前有个括号位置不对没发现
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-12-30 15:10 , Processed in 0.022226 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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