设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 8092|回复: 1

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

[复制链接]
发表于 2008-4-10 16:36:43 | 显示全部楼层 |阅读模式
我的模型,原意是使得每五个turtle成一个矩形,这些矩形随机散布在一定范围内。' u% d2 k, A2 r) b9 K! `
5 ?$ g8 l1 X7 ]; j. M5 t7 w* M8 B
但是运行结果所有的矩形重叠在一起,只显示一个矩形。请大家帮忙看看。* Q8 w4 X4 M0 j# b$ V& I

9 o% y. ?' i4 r- Tturtles-own [a b c d k f g h$ P, O6 \( G7 m  U
  x y     ;; these are the leaf-turtle's offsets relative to center-turtle ! c" @7 h* B3 ^
]( i2 c% e' F2 E0 U7 H; Y
to new- S" w% _, x, S
  ca. H: l: e9 j' r: t
  crt 5 * num_of_building* A8 v5 b% ~3 H6 z2 l& d1 z
  ask turtles [ifelse (remainder who 5 = 0) [set color red][set color blue]], e; I# e6 c8 p8 {$ A
  scatter     ;;keep center-turtle random positions ( b; [4 m" r: d: d. d! x. E" L
  unit_plan   ;;make up the building plan) X) D6 T/ p' g  l& D$ g
end
) |( G4 q' P- ?% R& b; Z  Mto scatter  j0 W6 A: o0 S! ?1 @
ask turtles with [remainder who 5 = 0]3 N0 `, I0 Z4 Y8 z' v" D& C
[
' x/ g: v+ e) q" v3 ^: p1 bset xcor xcor - 6 + random-float 15
% F$ \: G, n4 X: X9 d+ mset ycor ycor - 6 + random-float 15& X& n" Y( D  r0 b! s) i/ b
]
# @9 U: [! Q* f  cend0 G/ y- S0 J; _0 K3 s
to unit_plan   F+ V: S) P# v! s  b) n4 Z" M: P6 U
ask turtles [8 C2 w& h  i4 }+ r! Z1 w. t9 |0 t
if (remainder who 5 = 1) [set a who ( q$ L; K; u$ ]
                          set x ( 0 - Wid / 2 )
. }! w+ z$ ?/ x% E6 z                          set y  Dep / 2 ]
% C2 {8 t2 ?! J0 Q' ]           set b  int (a / 5) * 5& o, J6 I% a, r' y
    setxy ( xcor-of turtle b + x )
! u6 B5 f/ }2 j& j          ( ycor-of turtle b + y )
3 ~. Y) R5 L' A+ S3 c, ^' X: zif (remainder who 5 = 2) [set c who# E! u) B2 c9 b. T. _. C
                          set x ( 0 - Wid / 2 ) $ `  w% ]8 H7 @" g" {
                          set y (0 - Dep / 2 )  ]
' [+ H3 ?8 i" t- y# y                          set d int (c / 5) * 54 M# i6 B& T+ S/ ]. Q& B) l0 [
   setxy   ( xcor-of turtle d + x )5 F, B% t( m3 s! @$ J5 b: {
           (ycor-of turtle d + y )
" F# v4 o3 {& l! t         
+ P% o. I0 h' M+ e, z2 {            
4 U5 L; x, M$ Z0 K% r- F! Iif (remainder who 5 = 3) [set k who
7 n5 l% Y; ?+ f6 N" S& O( r                          set x( Wid / 2)  + p; y( @& r6 I) K$ _* q
                          set y (0 - Dep / 2 ) ]
5 H2 M' O4 c/ _; M                          set f int (k / 5) * 5
0 m% U. E7 A; b* ^) w  setxy   ( xcor-of turtle f + x ), A4 z, T, ^* z7 G& S! X
           (ycor-of turtle f + y )
8 M7 F) q- T7 ?% N           
! F& P, U5 ^; O& @- _           ! R+ [4 X. f5 Z: \2 T& W
if (remainder who 5 = 4) [set g who6 l2 W2 |7 ~, U! ~% k* Q) v
                          set x Wid / 2
0 {; C! R4 m; X: m                          set y  Dep / 2 ]; O" v0 |5 W. _; `  B
                          set h  int (g / 5) * 5
4 Z( }& c- @8 ~& I3 }  setxy   ( xcor-of turtle h + x )# M6 K' c9 ]3 Q$ C, J# C, u
           (ycor-of turtle h + y ) " |# P1 a" ?4 N% Y4 E/ f
                          ! n! t2 z6 s  n8 L% F
                          
: w7 _8 i/ m0 \5 X0 O                          ]/ Y) t3 h1 F4 w7 r" L$ E; K! P
end; ~( s8 ~2 q1 f1 g0 \

) ]( x/ E2 V0 p- D/ ?3 B[ 本帖最后由 etamina 于 2008-4-10 16:41 编辑 ]

本帖子中包含更多资源

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

x
 楼主| 发表于 2008-4-11 13:26:12 | 显示全部楼层
已经解决了,
% T8 [7 I% C9 w2 o应该是. h) |0 i9 m7 p! v
ask turtles [
3 k0 n/ C8 a4 Rif (remainder who 5 = 1) [set x ( 0 - Wid / 2 ) + f- {; P" ^1 t) s8 F
                          set y  Dep / 2
  y1 n, \# _) f& l$ K& ^$ ^           set b  int (who / 5) * 5
5 K0 \0 M; Q9 A0 m4 ?    setxy ( xcor-of turtle b + x )( T8 T+ X3 k, Z
          ( ycor-of turtle b + y )]]; k  E* O' M% G; [
end
' h8 }6 m! A, s$ o! N之前有个括号位置不对没发现
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-5-6 23:37 , Processed in 0.017442 second(s), 16 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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