设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7411|回复: 1

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

[复制链接]
发表于 2008-4-10 16:36:43 | 显示全部楼层 |阅读模式
我的模型,原意是使得每五个turtle成一个矩形,这些矩形随机散布在一定范围内。, K* c! b+ d* |

! o; C+ i& m8 V" D- O# _. X8 k' i但是运行结果所有的矩形重叠在一起,只显示一个矩形。请大家帮忙看看。0 G+ K  X% x- U7 U7 Z" Q

1 J( w* S4 g2 {, D0 w' N* Bturtles-own [a b c d k f g h
6 n5 A! q  h3 b$ k4 O0 J: {$ \  x y     ;; these are the leaf-turtle's offsets relative to center-turtle
; U3 o1 U8 g  ^# f3 e* a- w/ a]
7 k, H! N* i$ K* N4 v  sto new
3 z/ h, W5 s3 z# H+ N  ca
: @, G( n; o& H" q  crt 5 * num_of_building: W. z9 p3 G: H* c( Y
  ask turtles [ifelse (remainder who 5 = 0) [set color red][set color blue]]
3 _( N) M6 u0 y  scatter     ;;keep center-turtle random positions
3 Z2 X, R% X* a' w: q" V  unit_plan   ;;make up the building plan4 v( `9 a& W, I5 \9 Y" E, r
end
7 p$ I- ]  M& s0 P$ J- Y% [( wto scatter
9 Z& b; b! o- Dask turtles with [remainder who 5 = 0]- q$ a- g' Q) o; L# p
[
: Y3 ]% b& A9 U4 p5 g) p/ mset xcor xcor - 6 + random-float 15
4 N8 y9 E( i; W5 ^! E, Wset ycor ycor - 6 + random-float 15
- ~* K; M8 k$ A' R3 J  `* r]
! L$ h0 H! T+ D$ Qend
) Q$ E$ ]: O0 d" c, Cto unit_plan 1 Q2 Q$ g$ m4 M  `& s
ask turtles [
' w& e' w' L( f& q2 Aif (remainder who 5 = 1) [set a who
4 ^! ]8 `8 a* a( w" [' Z* i                          set x ( 0 - Wid / 2 )   ^# |4 v  l6 {4 Q
                          set y  Dep / 2 ]
& O% p" a7 ]$ @           set b  int (a / 5) * 5
. h# ?# t' H6 x- q2 _8 ^  ^5 b" ?8 |' a) w    setxy ( xcor-of turtle b + x )
: ?5 o7 k( [  M& W; H9 A0 s9 O' t          ( ycor-of turtle b + y )& R! X4 f0 B6 d% t
if (remainder who 5 = 2) [set c who0 k5 A) K$ Q: n: [
                          set x ( 0 - Wid / 2 )
3 d) C' d* z5 ?7 a1 Z2 r4 T                          set y (0 - Dep / 2 )  ]0 r* V: `8 V9 c& \
                          set d int (c / 5) * 5: b4 H" A6 T6 q( f
   setxy   ( xcor-of turtle d + x )
8 [+ \  _. D' [/ h           (ycor-of turtle d + y )
- |+ s% q; c+ Y/ V! ~) y          * J; z7 e" w4 T. |  u2 w- ~- d
            
" C5 J7 N9 a8 h9 g- }. R  M. N$ Cif (remainder who 5 = 3) [set k who5 \+ }) K8 M% H; Q1 \" g% X5 z
                          set x( Wid / 2)  & e! u* b( B9 J/ R, z' v. F
                          set y (0 - Dep / 2 ) ]5 C/ f3 D/ n/ e/ N$ z+ G
                          set f int (k / 5) * 51 C. H4 q% B6 F2 ~' f
  setxy   ( xcor-of turtle f + x )+ c) D* W7 J: e/ U: X! F
           (ycor-of turtle f + y )
/ U( i7 b+ h$ }5 K           0 k/ C7 ?# V' |2 B) h% c. K
           . U/ v  Q3 K5 L% \, S
if (remainder who 5 = 4) [set g who
0 y! _# ]+ M; e0 F# F                          set x Wid / 2 ! }8 J# f* X1 h% V/ |
                          set y  Dep / 2 ]7 _8 F# B" K5 ~
                          set h  int (g / 5) * 5
( \0 g6 i* p% n! X4 z" V  setxy   ( xcor-of turtle h + x )4 X" H6 T8 G% [
           (ycor-of turtle h + y ) : V8 z: d, u0 G7 u3 p5 S; f) J
                          
5 b. E& t9 K$ ~5 K/ J; d- E                          
; y' v2 _+ I1 C  p+ R7 q                          ]
& y) \- a4 l3 A" e: kend
0 r- ~4 S) D  q/ D. r- U' O0 Z' P4 N
[ 本帖最后由 etamina 于 2008-4-10 16:41 编辑 ]

本帖子中包含更多资源

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

x
 楼主| 发表于 2008-4-11 13:26:12 | 显示全部楼层
已经解决了,9 S2 K/ u$ U" _& U* C% a4 i
应该是& F* v4 O  a6 t* ~: y& U) w" r
ask turtles [
" m. R) ?$ x% z0 V4 }! Z' Bif (remainder who 5 = 1) [set x ( 0 - Wid / 2 ) + F( P2 g0 t, z( B. ]. W+ P0 `6 F
                          set y  Dep / 2
4 U; Z/ v1 E5 ?* ^) ^- Z- c- D# e           set b  int (who / 5) * 5. W, b0 W  E( R, K' B* q. w
    setxy ( xcor-of turtle b + x )
0 K, ^7 W, `) _          ( ycor-of turtle b + y )]]
6 a0 j4 a- ^( k7 yend
3 a! _% v8 |5 {' }: Q之前有个括号位置不对没发现
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-2-9 01:54 , Processed in 0.018375 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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