设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7122|回复: 1

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

[复制链接]
发表于 2008-4-10 16:36:43 | 显示全部楼层 |阅读模式
我的模型,原意是使得每五个turtle成一个矩形,这些矩形随机散布在一定范围内。1 O% j+ e- T) t+ f" Y1 G& I

. ]7 a8 a4 k2 i4 p但是运行结果所有的矩形重叠在一起,只显示一个矩形。请大家帮忙看看。
6 ?+ D3 `8 D, g5 [& l9 T
, A5 U6 _/ R) n. y8 F( q" ~turtles-own [a b c d k f g h
4 W6 g& s# C/ R3 \* `& O  x y     ;; these are the leaf-turtle's offsets relative to center-turtle 7 C" T2 r' C2 v) D- Q: ~
]% i) r% I1 [! f; O$ ?7 D3 n
to new7 x- t) `' Y4 @& y$ Z
  ca
. J' O/ n& t6 ?) I$ U1 q  crt 5 * num_of_building, ^, Q& v2 k3 Y" i$ r
  ask turtles [ifelse (remainder who 5 = 0) [set color red][set color blue]]( X& Y3 f0 J+ |; A9 L  ]
  scatter     ;;keep center-turtle random positions " J4 J7 Z1 r1 A" l6 N8 X
  unit_plan   ;;make up the building plan& Z& r$ h% \& w- @2 ~/ |
end) Q! a4 g1 p! N& _* u
to scatter0 |5 k# }4 |9 x0 k& E
ask turtles with [remainder who 5 = 0]' g5 g0 H, }# J& F
[+ r! g( u4 G7 r3 k% }
set xcor xcor - 6 + random-float 15
& b  o7 ?% N/ x( L' N; Yset ycor ycor - 6 + random-float 15
3 r4 W# L3 H- j2 E! O]
9 n- c9 E/ V. l/ _0 Wend
. ~' ~6 u2 F2 t/ P3 Xto unit_plan
3 \" O# o+ h2 o: X- f+ Y4 V6 M* I. _ask turtles [
- Q6 I  j0 `- z3 Kif (remainder who 5 = 1) [set a who
8 A, h7 L( f0 w" }- u. Q, }                          set x ( 0 - Wid / 2 ) . F0 B1 c2 O- N  E4 g1 }) H- o! F2 r: ^
                          set y  Dep / 2 ]
' N& H- `3 a* y/ i! d. B           set b  int (a / 5) * 5
3 R5 j3 d9 t5 u3 A0 u- s6 n    setxy ( xcor-of turtle b + x )
- a/ _/ V+ E9 R. s% F, G          ( ycor-of turtle b + y )
! @, I' C6 A1 n' Nif (remainder who 5 = 2) [set c who; v# f) ~+ _' c' X
                          set x ( 0 - Wid / 2 )
( w6 E  D/ r- q3 a                          set y (0 - Dep / 2 )  ]
& Y3 j, `6 e0 d2 h, e0 K                          set d int (c / 5) * 55 `$ C4 F, C' N
   setxy   ( xcor-of turtle d + x )
( M0 e3 ~0 @. m# s           (ycor-of turtle d + y ) 2 E% H1 E5 a% z4 U1 b- E! l$ N+ N
         
+ t( K4 g; G& \- c            
9 k  B( a% l% n) \8 i2 U5 E/ z9 Yif (remainder who 5 = 3) [set k who
6 O& A; ?9 ]+ }+ P                          set x( Wid / 2)  
7 S/ a/ L9 _* a2 @. u/ I+ o                          set y (0 - Dep / 2 ) ]
: H4 B+ n2 ?( X, z  ^. L% \% s: P                          set f int (k / 5) * 5, p% P* e' Y1 j: b) O" C5 P
  setxy   ( xcor-of turtle f + x )
' Y4 O1 t, |, Z" h8 [           (ycor-of turtle f + y ) 4 x' \  C, N2 B; y9 b2 R" A5 O! @9 r
           
9 A3 }2 A) n. ~  a0 e0 m           2 S1 X$ H( X9 `; k
if (remainder who 5 = 4) [set g who- m: K) x, _( P' V& D' T4 w/ f! ^
                          set x Wid / 2 ( I+ G; M6 p) L, i# \( [
                          set y  Dep / 2 ]
& M9 x& I# a2 f) P. |: X                          set h  int (g / 5) * 5
. f2 f7 g' G' p9 a: a  setxy   ( xcor-of turtle h + x )
. E6 ?( G7 p  a( ]. O4 J: n           (ycor-of turtle h + y )
2 A  ^- n' p% ~- m9 I6 L; c                          4 v2 I1 _- [( q* c$ l* J9 \
                          % D2 u. O( O7 A
                          ]) I% ]9 i9 X. R7 G3 N
end
; u/ m$ h% ]. ]+ i( z. K5 |7 a0 Y9 t% \# H. N& _: [( p. J( `1 L
[ 本帖最后由 etamina 于 2008-4-10 16:41 编辑 ]

本帖子中包含更多资源

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

x
 楼主| 发表于 2008-4-11 13:26:12 | 显示全部楼层
已经解决了,
; Z+ \7 U% V) ^应该是, W# E) E, v6 N; I4 }) X
ask turtles [
0 }7 j2 W0 Y4 rif (remainder who 5 = 1) [set x ( 0 - Wid / 2 )
" t: J9 ]" J# g% G                          set y  Dep / 2 9 r% q- H9 ^# @/ C) b4 h0 p
           set b  int (who / 5) * 5! W6 ~  R( ]" n1 B  f8 b
    setxy ( xcor-of turtle b + x ): f5 }6 m$ Z+ N
          ( ycor-of turtle b + y )]]
( ~# N' E  k9 B: A4 b5 y* k) Send& J. a5 t$ d6 z% ?
之前有个括号位置不对没发现
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-1-2 12:57 , Processed in 0.020471 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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