设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7331|回复: 1

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

[复制链接]
发表于 2008-4-10 16:36:43 | 显示全部楼层 |阅读模式
我的模型,原意是使得每五个turtle成一个矩形,这些矩形随机散布在一定范围内。* q$ s" z, H& }2 h8 q+ e! G

6 T; t- l$ \  w$ C9 k, R但是运行结果所有的矩形重叠在一起,只显示一个矩形。请大家帮忙看看。# @# l. F$ m2 L& L7 O9 R& ?. F% l
4 Y5 N4 f% {( [- b' c) P" e& A
turtles-own [a b c d k f g h
+ \$ m  K' [! z% K7 Q* y  x y     ;; these are the leaf-turtle's offsets relative to center-turtle : ^  |- [5 \, o" G% t, L) G
]
" o- l8 n$ F  _! }0 tto new1 [) m. A2 Z: F6 h! s0 K/ Y: a3 {
  ca* K( j) A' F; d/ G7 M, {
  crt 5 * num_of_building6 Y+ C/ j4 f$ U9 g
  ask turtles [ifelse (remainder who 5 = 0) [set color red][set color blue]]# b8 k* r  e! _4 K" x- s
  scatter     ;;keep center-turtle random positions 5 l/ u6 b2 T8 d$ C! C8 p. D
  unit_plan   ;;make up the building plan
' S) M* m1 {' ~3 D# @: Yend! r  m- ]; q* U( p
to scatter- @3 \  X. P9 j  q
ask turtles with [remainder who 5 = 0]8 r8 Y# o8 G( w2 p, ?, w8 X
[
5 j* D  R4 C! H, L. @. |1 w7 jset xcor xcor - 6 + random-float 15( j  ^! Z4 v5 k8 X
set ycor ycor - 6 + random-float 15; @! c4 j" Q" @- g) Z( ?
]
$ l6 k) r$ F/ O; C5 uend) V3 M: H+ |. E, {  I9 I1 n
to unit_plan 0 X, I5 D6 D. i$ o1 h
ask turtles [
  V* z4 d1 S! fif (remainder who 5 = 1) [set a who
8 z* A% I, B, n# p                          set x ( 0 - Wid / 2 )
$ t. B2 t$ A$ N# h: n                          set y  Dep / 2 ]- p' H6 t7 d* `( w' \5 }- [
           set b  int (a / 5) * 54 n4 N3 b- v% V  J  k: P8 t, |
    setxy ( xcor-of turtle b + x )2 y0 l7 d" t5 [/ ^% R! D2 y. h- o
          ( ycor-of turtle b + y ). r6 ^5 J5 ?- A3 w
if (remainder who 5 = 2) [set c who
9 [! X; |4 U% ?6 o; L1 c- N                          set x ( 0 - Wid / 2 ) ' A6 F$ x, p7 G1 {5 X" m; Q/ J
                          set y (0 - Dep / 2 )  ]% }3 ~7 V5 U5 c9 o. \
                          set d int (c / 5) * 54 O# P' V2 P" J' F4 P! B* S
   setxy   ( xcor-of turtle d + x )
3 G  E' g  a, B# P2 p           (ycor-of turtle d + y )
* u$ v# Z' l& P: y% U         
4 d% S. P$ m6 J4 ^- ~  v            7 b$ m) ~, _& Z
if (remainder who 5 = 3) [set k who
  D& R. _! y4 k' M. q+ Z: J                          set x( Wid / 2)  
6 P) v7 x$ u3 r. g/ Q                          set y (0 - Dep / 2 ) ]
. S) _6 l& V% {& L                          set f int (k / 5) * 5% J+ r9 c1 @  g; y( i( g
  setxy   ( xcor-of turtle f + x )
0 D- q5 F2 H1 ?           (ycor-of turtle f + y )
7 |. ]  Z0 c8 \/ @1 I8 W$ L2 U           ( y8 w7 f& D3 ^4 c# K  N
           
: r5 q& h6 S! v" u% ^% mif (remainder who 5 = 4) [set g who
& p; ^5 ^1 ^0 I8 t) R                          set x Wid / 2
5 n  C2 V3 \* P                          set y  Dep / 2 ]: O9 I( n: q; m! L' {: h, U8 i$ x
                          set h  int (g / 5) * 5
+ h) I; J0 X& b7 P- A  setxy   ( xcor-of turtle h + x )1 \8 l! f& v, L$ {5 |0 R1 N9 e
           (ycor-of turtle h + y )
" q) I" ^$ Q6 W. V* h5 F                          ; E. h. a# _. s0 m* X6 j* s& V
                          
+ W$ c" x9 N, A6 W1 O) K                          ]( a5 ^$ ?  e# x
end
1 A4 _) l/ O/ h. p6 P
+ J6 k$ E  o$ E8 s0 H; H[ 本帖最后由 etamina 于 2008-4-10 16:41 编辑 ]

本帖子中包含更多资源

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

x
 楼主| 发表于 2008-4-11 13:26:12 | 显示全部楼层
已经解决了,
  O) }9 P6 [  g应该是6 G, x% s0 t1 b! j
ask turtles [
4 l& @- Q9 |9 u6 S. Y6 X, J3 |if (remainder who 5 = 1) [set x ( 0 - Wid / 2 ) 5 m. B& R: H! o6 d& s8 D3 I
                          set y  Dep / 2
7 a9 t! l2 C( h2 N0 w           set b  int (who / 5) * 5/ ]8 d9 J4 ^& R& _/ b5 E- U
    setxy ( xcor-of turtle b + x )8 A5 R1 |0 U/ Y; t' ^
          ( ycor-of turtle b + y )]]
" w# y* F$ ?- O) ~end/ v  H2 m! G1 x" T
之前有个括号位置不对没发现
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-1-30 09:09 , Processed in 0.018059 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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