设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7712|回复: 1

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

[复制链接]
发表于 2008-4-10 16:36:43 | 显示全部楼层 |阅读模式
我的模型,原意是使得每五个turtle成一个矩形,这些矩形随机散布在一定范围内。5 X) Y: r  V, S, F. U) e; h0 i( @/ r
' T% |6 ~4 k  i! `
但是运行结果所有的矩形重叠在一起,只显示一个矩形。请大家帮忙看看。
; }' S  W- j$ p" b2 |! g+ S3 y  A
' [3 D) q& j% Yturtles-own [a b c d k f g h8 D. y9 B' h4 \$ g8 i! |8 ~  b3 W+ H
  x y     ;; these are the leaf-turtle's offsets relative to center-turtle / X8 L* z6 h/ D' W, ?4 G) n
]
  v1 U+ z; b7 x% y4 {4 K! U6 Fto new
& L) v+ Q) `0 F  {5 m" F! W1 a) m  ca" c+ S" ~! [7 T+ ~: H. d; H
  crt 5 * num_of_building7 d0 m7 e) d2 v  o" r
  ask turtles [ifelse (remainder who 5 = 0) [set color red][set color blue]]& q. H. t& P* A; z" X
  scatter     ;;keep center-turtle random positions " l5 g3 q0 e. l8 e& y5 W; _0 f
  unit_plan   ;;make up the building plan! d3 r0 C6 h3 O7 f8 i9 |
end& m6 T7 T- x  L# g
to scatter% c$ Q2 Y% i4 A, q# o
ask turtles with [remainder who 5 = 0], x  |8 ~. D/ U
[% k4 D2 h' P% x/ `4 [
set xcor xcor - 6 + random-float 15
/ C3 H' Q' E+ }) n. {7 \- p$ x1 Oset ycor ycor - 6 + random-float 15: Q) f: V0 P! P9 k: V( S5 V
]. G6 U; E3 e# f% B9 |% x6 d4 a
end' D0 v% j1 E# C# z3 ^8 Y' X
to unit_plan 4 P8 d* c) i5 R
ask turtles [
. `$ L/ y/ P# t3 D/ m8 |& R" X2 Mif (remainder who 5 = 1) [set a who
3 Y4 l2 w% F$ L6 e+ e" ^# A                          set x ( 0 - Wid / 2 )
4 ?! w  x7 H0 y, d5 V* K                          set y  Dep / 2 ]
6 {; K, @: G) \4 d           set b  int (a / 5) * 5
) L9 I" \0 E4 }+ ~    setxy ( xcor-of turtle b + x )) e# G: P5 u% D+ O' C# Y" P
          ( ycor-of turtle b + y )
) }, c: q, l  I3 Q( L3 L( D# sif (remainder who 5 = 2) [set c who
4 |( k8 _9 y, O8 n; s. S0 j& U                          set x ( 0 - Wid / 2 ) 4 L4 f- t% B1 o
                          set y (0 - Dep / 2 )  ]5 Y- }( ~' S, Q* y
                          set d int (c / 5) * 5
7 C. c( ~/ A" m' d/ C. H. f/ P; [   setxy   ( xcor-of turtle d + x )
4 r+ Y! ]; J# V0 K1 x) u! G           (ycor-of turtle d + y )
- Z, P7 C; \, q& q6 X         
0 t2 j$ m' Y* G/ C7 S1 r5 d  t0 B            ( Z0 q7 z4 Q0 O7 i
if (remainder who 5 = 3) [set k who! w8 z: A0 Y3 g8 r9 A- C
                          set x( Wid / 2)  5 @8 M+ B" ?3 [
                          set y (0 - Dep / 2 ) ]5 ]6 V7 V8 _4 f
                          set f int (k / 5) * 5, i5 T/ ]- a! v- H. `. V3 _8 J
  setxy   ( xcor-of turtle f + x )
+ O% W! v6 n  F: Z7 a           (ycor-of turtle f + y ) + ]2 R" @3 X2 u. t$ i
           
0 ^- `* n" P+ ], a1 j: k; M" S% B           , f# T& w  I! h# ^4 U# y" [3 a
if (remainder who 5 = 4) [set g who0 H  B/ x- O$ ]/ ~( H+ ~1 N" P
                          set x Wid / 2 ! D9 W' h) X! B8 M# H" T4 o, T& I
                          set y  Dep / 2 ]/ w0 S$ E2 r3 v9 W5 E( j( L/ J
                          set h  int (g / 5) * 57 @& y" p- ?4 X. F! K- b
  setxy   ( xcor-of turtle h + x )
" ?5 ~6 u0 q, Z' ?           (ycor-of turtle h + y )
9 A0 \+ r. |2 u9 H5 a$ E                          8 R2 w0 G* g  c8 @5 N; C
                          4 W- e: \- S+ Y" q2 ^, k
                          ]9 z' l7 W6 t, u, H4 O, J
end
- m/ V5 I& x! D4 u3 N1 r( i: s" J. g5 z
3 U3 B) u6 r( c4 m( F  g; D2 j[ 本帖最后由 etamina 于 2008-4-10 16:41 编辑 ]

本帖子中包含更多资源

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

x
 楼主| 发表于 2008-4-11 13:26:12 | 显示全部楼层
已经解决了,7 C5 B" b, [+ d  i% f5 d: M' F
应该是
. [, l$ }$ K+ X9 m; m( Qask turtles [; T" B( w* d  Z! |
if (remainder who 5 = 1) [set x ( 0 - Wid / 2 ) $ j8 d8 |0 [% b2 L0 ]1 G
                          set y  Dep / 2 4 j4 ~: F$ \+ d  f9 d2 N( Z9 S; v
           set b  int (who / 5) * 5
" f- p3 I; I  y. `2 |3 U    setxy ( xcor-of turtle b + x )
$ }; k; J$ }5 `8 U" L  Y          ( ycor-of turtle b + y )]], C3 G& R# N$ l! _
end
0 |; p. m1 M5 Y, h  e9 p之前有个括号位置不对没发现
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-3-18 20:47 , Processed in 0.022489 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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