设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7966|回复: 1

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

[复制链接]
发表于 2008-4-10 16:36:43 | 显示全部楼层 |阅读模式
我的模型,原意是使得每五个turtle成一个矩形,这些矩形随机散布在一定范围内。
0 @5 t" c  _. z) n
9 z( c. d% ?8 T( v; G但是运行结果所有的矩形重叠在一起,只显示一个矩形。请大家帮忙看看。" ]' F, f6 T3 V. G3 L0 c
; v9 ~8 [& N/ r) w3 `* M/ P# E
turtles-own [a b c d k f g h
6 n( |! d5 [$ ~2 S0 _4 j  x y     ;; these are the leaf-turtle's offsets relative to center-turtle : [0 g( G# m, B
]: k0 w: _" i$ J
to new" V5 X9 j* t( M4 [* V  m
  ca
+ S1 d* Q4 m) r4 ]4 {$ P, P, j# x) s  crt 5 * num_of_building3 M  `' m+ i; X. `0 c4 a
  ask turtles [ifelse (remainder who 5 = 0) [set color red][set color blue]]
" }2 k; z$ ]$ ?9 `# ^0 M/ G  scatter     ;;keep center-turtle random positions
1 \% x- ]+ z3 Z; t1 J  unit_plan   ;;make up the building plan" Q2 M) u5 U7 o  s' X6 l2 Q* z
end
: |* b. g8 p% \) k! c( H; C2 N% wto scatter
0 T5 [7 l6 q- o( j% G: J" Kask turtles with [remainder who 5 = 0]/ B# r5 y) w# w* X* r' Y4 V! n' ~7 o
[
3 }, @1 q$ x8 K5 \% T2 Q: bset xcor xcor - 6 + random-float 15  M  ~- L4 u/ x+ S- `9 x
set ycor ycor - 6 + random-float 156 y0 h6 p; @# R7 U3 N
]
, ]0 e/ R! Y) M6 u3 [5 R+ Wend& M* w1 {* W2 A
to unit_plan ; C/ w- H3 M; f8 F  x) d5 N6 d- s
ask turtles [- H' p5 Z8 L; l& \- m) |" D: u/ j8 H
if (remainder who 5 = 1) [set a who
- Z- z  K* n/ i- k$ E  w+ h, O                          set x ( 0 - Wid / 2 ) # ^7 H( J8 A, K8 w; D
                          set y  Dep / 2 ]
  h/ `6 y; \* c) g3 X6 [: d           set b  int (a / 5) * 5
1 N7 ]( x2 `6 z7 P0 I" x# j, j. C    setxy ( xcor-of turtle b + x )! y" v! B7 A( }! k9 g0 f
          ( ycor-of turtle b + y )( J: h# Q& Y1 H5 W) d4 G4 Q) @) b
if (remainder who 5 = 2) [set c who/ G% L8 P* P+ \' x7 m8 |
                          set x ( 0 - Wid / 2 ) ( }( e/ a6 v0 w/ C( w
                          set y (0 - Dep / 2 )  ]. w3 z# k* Q# l, m: h# \- [9 h
                          set d int (c / 5) * 5
+ h; K) |: {# t' i" m; D% j6 e+ k   setxy   ( xcor-of turtle d + x )! y. g2 E, z! O. J8 _+ f: Z
           (ycor-of turtle d + y )
: h; M; K; u; R0 s2 I5 _( s# A          ( g4 K% N' l4 {; X+ I2 c0 |7 _" E" e
            $ z: L& M: Q( ]. Y+ U
if (remainder who 5 = 3) [set k who, q; W+ y7 f0 Q; v2 z5 R
                          set x( Wid / 2)  
* l  y7 f; J. i" m+ {                          set y (0 - Dep / 2 ) ]% g) Q) C6 G7 {4 `) v& C0 b4 Z' F( k
                          set f int (k / 5) * 5
' |- {3 I+ o- L. T% [8 l1 ]) L  setxy   ( xcor-of turtle f + x )8 d) X6 W5 F, s  `* M, i
           (ycor-of turtle f + y )
3 {6 _1 v& ^) K' u/ v) H0 k% H           
' j  d, R, s8 A6 q           ) t' s# D8 ]3 D7 ~1 f
if (remainder who 5 = 4) [set g who9 C# v$ o' M. _( ^+ f  w0 z% J
                          set x Wid / 2
  S7 c. z1 T5 Q' Z' @                          set y  Dep / 2 ]
: L- u- P% ^) I+ I9 Y                          set h  int (g / 5) * 5
* p1 U& {3 j- j2 E- d+ e7 X  setxy   ( xcor-of turtle h + x )
. f3 I# h& G2 S$ y/ d7 Y           (ycor-of turtle h + y )
) x# V+ I* ]2 C                          % ~$ ]* ^$ |& O2 c0 d# v
                          
; Z! N' W$ w$ H7 y, ^" o! G9 e: q! Y: K                          ]
- w9 H! ]! ]2 m  y: send
6 U& B0 \$ J& A4 k# W* k
5 V3 ~3 n9 c$ I  q7 C[ 本帖最后由 etamina 于 2008-4-10 16:41 编辑 ]

本帖子中包含更多资源

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

x
 楼主| 发表于 2008-4-11 13:26:12 | 显示全部楼层
已经解决了,
# s2 M7 `$ |4 F% B" d+ a' r应该是
- B' Y4 L) a# N& Y: Vask turtles [+ b+ @  U5 H2 G' s- A5 V7 c
if (remainder who 5 = 1) [set x ( 0 - Wid / 2 )
1 ]& r* i, I( l  {, x* O& e; o                          set y  Dep / 2 " H8 A, ]7 I% ~
           set b  int (who / 5) * 52 C$ p9 t' v% R2 T! P  b
    setxy ( xcor-of turtle b + x )8 T, Q1 X: b/ c! t
          ( ycor-of turtle b + y )]]# W& Q% G& {7 e
end
, @) n0 [# h( k7 e( X之前有个括号位置不对没发现
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-4-22 20:09 , Processed in 0.015557 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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