设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7378|回复: 1

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

[复制链接]
发表于 2008-4-10 16:36:43 | 显示全部楼层 |阅读模式
我的模型,原意是使得每五个turtle成一个矩形,这些矩形随机散布在一定范围内。. s5 m% t& \- c1 S) X
' I2 B3 X4 c. U
但是运行结果所有的矩形重叠在一起,只显示一个矩形。请大家帮忙看看。
7 z9 j# V7 c& K5 T4 |, |" o
  k; ^: |$ g0 e, p8 eturtles-own [a b c d k f g h( x5 H- K; P) U2 N
  x y     ;; these are the leaf-turtle's offsets relative to center-turtle * w  s7 Y% j) P. D) q8 ]6 k: |
]
- n! l& E/ t& c. gto new
2 z  c' ^* h- A3 \6 f  ca' _' }8 B9 W5 }+ R# d
  crt 5 * num_of_building
* i1 z3 l2 t' O+ `  ask turtles [ifelse (remainder who 5 = 0) [set color red][set color blue]]
3 m% `# r% _3 X  scatter     ;;keep center-turtle random positions 2 D5 i' \. |. N( @5 @
  unit_plan   ;;make up the building plan% d( G* O9 I. n3 S- Z* X
end
. r3 R! c8 D: Y3 m# jto scatter7 k, L0 Z! u5 d/ ]) E. m' p! v
ask turtles with [remainder who 5 = 0]/ \# Y" ?9 D3 I+ ]' w3 c+ w6 M" y
[( `5 `; P, K5 P0 d% o% p1 o7 y
set xcor xcor - 6 + random-float 15! a) [3 Z. G% {! o- l7 x
set ycor ycor - 6 + random-float 15) F% G9 |* N3 K! t
]
/ \6 z  T9 F  @end& L, O5 z0 {! X; [
to unit_plan
: b: p8 D7 W7 @ask turtles [
: y  X' ~, j2 xif (remainder who 5 = 1) [set a who
$ ?/ C- @! O' |, G- ^; h2 u                          set x ( 0 - Wid / 2 ) 8 p; ?( V% H' e2 B. L
                          set y  Dep / 2 ]
- e" h  M" K* m$ L" k+ {% ~           set b  int (a / 5) * 5. ~. y: M) U9 \) d& D4 N+ b1 C1 w
    setxy ( xcor-of turtle b + x )
+ J' e4 |* U3 @3 p          ( ycor-of turtle b + y )8 I7 s, G0 V. J0 H8 H3 I
if (remainder who 5 = 2) [set c who2 v1 i9 w$ M( A( s1 z
                          set x ( 0 - Wid / 2 )   Y5 {5 ]2 P: w  ?% j# u2 h
                          set y (0 - Dep / 2 )  ]- i% Q% b! V) c+ W% p1 V4 r
                          set d int (c / 5) * 5! ?; \3 }, Y/ a1 K& Y
   setxy   ( xcor-of turtle d + x )& T8 J5 k* o0 j6 }
           (ycor-of turtle d + y ) % k6 b8 \0 @7 l" E! \
         
2 B# ?6 q- i+ O: m! X/ M5 o            
: |6 T0 J" p# A( O8 wif (remainder who 5 = 3) [set k who
1 ?% v/ v$ |( G3 O7 d8 [. y                          set x( Wid / 2)  
" A7 E+ W. B. W  R6 g* _                          set y (0 - Dep / 2 ) ]
* ^2 y' |6 z8 I1 I' q5 Z                          set f int (k / 5) * 5
# U  M, {$ _2 K  setxy   ( xcor-of turtle f + x )+ L  N6 E6 G% l8 ]. d! @
           (ycor-of turtle f + y )
" h9 P0 l# p" e3 ?9 c: c7 \           + R+ e2 C4 n7 l3 t. I
           
8 K5 O  D# _1 z) T& o4 Iif (remainder who 5 = 4) [set g who
; ], I1 c8 R% @                          set x Wid / 2
+ k2 F& m& @& e: U- d$ G                          set y  Dep / 2 ]
! y0 o, e8 j! ~8 Q) x8 p2 ?                          set h  int (g / 5) * 5
' ^7 Z; y5 ?- N4 P- y0 W/ t- j: ^  setxy   ( xcor-of turtle h + x )% P$ i( d4 W% U& s
           (ycor-of turtle h + y )
/ L- ^- w" y- D                          
. l9 }, d1 Q, g, L( Q! b. l) m1 F                          + K1 U2 `' u2 A4 |/ t: f
                          ]5 c& {4 c7 F) o, p0 t8 R/ C) Z, \) o4 T' X
end
3 u5 o# j1 u: ]9 S4 c; X
( l# Z7 }2 e/ y; `! r) v[ 本帖最后由 etamina 于 2008-4-10 16:41 编辑 ]

本帖子中包含更多资源

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

x
 楼主| 发表于 2008-4-11 13:26:12 | 显示全部楼层
已经解决了,
# ]) U. H! M* K( d3 i5 L6 K1 u( ^应该是8 A1 l4 c7 R$ a+ W0 ^; ^0 d3 p
ask turtles [
# I% S: G5 F* F  A6 t. T$ N1 nif (remainder who 5 = 1) [set x ( 0 - Wid / 2 ) " y" j9 V1 m3 d% c; b" n; K# u
                          set y  Dep / 2
4 O* G* A7 X8 L+ N) J           set b  int (who / 5) * 5
6 \7 i/ i/ q* j7 V8 x. e    setxy ( xcor-of turtle b + x )
& ^$ ?# r7 h, Y( y7 D6 [: D7 }          ( ycor-of turtle b + y )]]: \. Y% A9 H) y- {' g
end2 o+ j$ a" r8 d4 P7 y
之前有个括号位置不对没发现
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-2-5 11:42 , Processed in 0.015682 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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