设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 8344|回复: 1

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

[复制链接]
发表于 2008-4-10 16:36:43 | 显示全部楼层 |阅读模式
我的模型,原意是使得每五个turtle成一个矩形,这些矩形随机散布在一定范围内。$ ]7 m+ `* s% f& @
& Y1 Q/ m+ k; i& |1 c
但是运行结果所有的矩形重叠在一起,只显示一个矩形。请大家帮忙看看。
3 U' {! l' P, j% x9 ?# `- M, E+ n+ G  S( r: Y. i% |( u
turtles-own [a b c d k f g h
5 g0 m; O+ J0 a4 h2 }! m3 a  x y     ;; these are the leaf-turtle's offsets relative to center-turtle 0 k9 |6 P" P% R! k0 \, E% ^
]( n6 y, n! _# K: ~7 H
to new: r1 C  G; E  B
  ca$ d. k/ g5 Q& B3 E1 `
  crt 5 * num_of_building+ l$ {; @! _( ~: d' i  O) B0 |! W
  ask turtles [ifelse (remainder who 5 = 0) [set color red][set color blue]]
5 R. K4 N+ M% }- X; r1 i  scatter     ;;keep center-turtle random positions
" P. _! a& g. }: k  unit_plan   ;;make up the building plan; s/ I0 z. O1 o$ r
end
  Z0 D7 \  W6 Nto scatter: C3 a. J- U* ]# C2 |( I$ O
ask turtles with [remainder who 5 = 0]7 ^+ t. J4 v' H
[
9 Y) i9 ?1 x. a  B/ V  y. `& eset xcor xcor - 6 + random-float 15# u) F) Y0 I  N
set ycor ycor - 6 + random-float 15
3 e  |* S* ]  y" v  C) W]
4 V" }- w2 u  _8 T( R8 uend
* Y  b4 u2 ~2 Uto unit_plan 6 z+ R. g! f, O( g+ L  K
ask turtles [
- w: I+ I. l# h/ v: \1 Aif (remainder who 5 = 1) [set a who 7 P" |3 E( S2 J" }+ |+ O
                          set x ( 0 - Wid / 2 ) $ Z! L" b% p: I4 O& b1 z
                          set y  Dep / 2 ]
) _5 D: O; \' Y) ~; ~3 O           set b  int (a / 5) * 5
/ Z' s( e" W. O* X* _( }    setxy ( xcor-of turtle b + x )6 g6 h6 C, s; C( M' s! w
          ( ycor-of turtle b + y )
7 X9 t' f7 ?& ]. P* lif (remainder who 5 = 2) [set c who
) H  Z0 `9 _+ @5 n- s( m% X2 v+ H                          set x ( 0 - Wid / 2 )
2 a2 @/ B6 ^* {  J" S" i                          set y (0 - Dep / 2 )  ]
- j( H) s8 f* m5 k3 F' C# p                          set d int (c / 5) * 5* Y& u- m8 ?! M! u; h1 R
   setxy   ( xcor-of turtle d + x )
# s  h' a7 d. \3 }1 w( {. L* {           (ycor-of turtle d + y ) : k  ?2 d7 i7 N9 S/ {; n
          % p: D7 }4 N! Z4 Z, w% F1 E
            : v/ Q& P/ {8 v
if (remainder who 5 = 3) [set k who  i3 C) m; U, n8 g2 P. Q
                          set x( Wid / 2)  
  ~* B) T5 N" c7 Z( D3 z                          set y (0 - Dep / 2 ) ]4 e5 v9 q: c/ Z& ]( a
                          set f int (k / 5) * 5% N2 e: w! H/ I/ {1 g7 s
  setxy   ( xcor-of turtle f + x )9 t8 g4 |; C0 T, o& q0 i! q* S
           (ycor-of turtle f + y ) ) a- e' \* ~; u( v! D( z; R
           2 Y  m: _9 C8 C- G6 F+ v: c
           / j, Q) C$ G" [' z: h, T
if (remainder who 5 = 4) [set g who  k( h/ o' v  z, e( J4 E8 @
                          set x Wid / 2 0 U5 \; e4 F6 \: D( U5 |
                          set y  Dep / 2 ]
7 i4 `! q# S. q! D5 d                          set h  int (g / 5) * 55 S6 @' b/ M0 P) h  F" _' l% N
  setxy   ( xcor-of turtle h + x )/ ?, [0 w" ~4 H, I, E1 L
           (ycor-of turtle h + y )
# B' c4 R2 t% |/ Y; M  q                          ( N) z9 m6 v. q+ |7 g
                          2 x5 v# `" U# D3 i, K. H6 w
                          ]
, G$ i9 U0 Z5 V2 H, \3 Dend- i# f! K7 z0 [0 i/ b9 s

( {% n. r$ n+ N" P# g8 q- ]( Y8 ][ 本帖最后由 etamina 于 2008-4-10 16:41 编辑 ]

本帖子中包含更多资源

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

x
 楼主| 发表于 2008-4-11 13:26:12 | 显示全部楼层
已经解决了,
) I7 T2 Y- U, l/ c( k! Y2 t应该是
$ N8 Q" w. H$ ]7 Rask turtles [/ c& w) [, H. z, u* J0 m
if (remainder who 5 = 1) [set x ( 0 - Wid / 2 )
  c& e2 N2 m( ?6 H5 J) o. I4 U                          set y  Dep / 2
6 T( E6 [! D2 _# S+ }) r. Q1 f           set b  int (who / 5) * 51 \+ k& s4 f9 t
    setxy ( xcor-of turtle b + x )
4 I/ D; i# q- s. U          ( ycor-of turtle b + y )]]
- `& S; X8 h: y9 e6 X' }5 S+ qend9 u7 ?5 @" a/ P3 B; H7 i
之前有个括号位置不对没发现
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-6-11 14:18 , Processed in 0.016302 second(s), 16 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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