设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7001|回复: 1

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

[复制链接]
发表于 2008-4-10 16:36:43 | 显示全部楼层 |阅读模式
我的模型,原意是使得每五个turtle成一个矩形,这些矩形随机散布在一定范围内。
; B8 d% M* \2 U6 B) }5 Z" I3 J2 s& B% I  y) x* Z" k
但是运行结果所有的矩形重叠在一起,只显示一个矩形。请大家帮忙看看。
/ L$ r6 L! V! K1 y* r! r7 Q" p5 W
turtles-own [a b c d k f g h8 S' U" p( W# @& Q1 ^( M0 P
  x y     ;; these are the leaf-turtle's offsets relative to center-turtle
6 d% I1 V* x' o+ e4 @]
- r" l; h3 i- t# d1 m+ d0 _to new
3 ^5 m2 |" h  \1 ~  U' q  ca* p3 Y( R+ ]7 S
  crt 5 * num_of_building  p& B0 u; h$ S0 M( P
  ask turtles [ifelse (remainder who 5 = 0) [set color red][set color blue]]8 y& }% U3 {3 `$ K; P7 Q( @1 E
  scatter     ;;keep center-turtle random positions # Q. Y! B& A( k& z/ J
  unit_plan   ;;make up the building plan
. e% l" V/ v' B* x9 L* iend
0 U- l+ O+ s3 K3 p  E$ c( kto scatter
: V4 ~) _8 P( W6 {0 r- fask turtles with [remainder who 5 = 0]
! ~& p: b. j0 q6 j. w) d1 @[# [  ?5 f  z& m4 Z" x, l; W8 ~* E8 I. V2 [
set xcor xcor - 6 + random-float 15
: B' r, ?0 D& Q- B( kset ycor ycor - 6 + random-float 157 P& ~6 ~. x: Z4 u; h5 h
]
9 t0 q+ |9 T! ?3 r' ~- }9 Mend
( K( T5 ]* C9 E! h( K4 j6 Mto unit_plan
! N/ r; e+ }' l1 N4 Y6 ~( f! uask turtles [
/ M9 P7 D9 D! s' \if (remainder who 5 = 1) [set a who
  A, F1 N6 c+ A: ?5 [3 b! f                          set x ( 0 - Wid / 2 ) 4 K1 H/ n4 N4 i
                          set y  Dep / 2 ]
$ `/ b: k, M: V# Q: n           set b  int (a / 5) * 58 I# }" W3 \) _6 l
    setxy ( xcor-of turtle b + x )
* }$ Y* F" {& `) D5 L; m          ( ycor-of turtle b + y )
  u" F$ @& T8 r( w2 r) b/ Lif (remainder who 5 = 2) [set c who1 R- ~2 U+ s/ i# I, x) z% n' K
                          set x ( 0 - Wid / 2 ) ) v5 C) h2 S$ z5 i% Z; f
                          set y (0 - Dep / 2 )  ]
2 {4 _7 t0 o( E                          set d int (c / 5) * 54 g+ z, |7 O9 x" t! I5 Z  I
   setxy   ( xcor-of turtle d + x )
1 `( H% Z, ~8 J+ g" ^8 e9 z; S1 _           (ycor-of turtle d + y ) " g! a! X* y, X
         
& s2 |* d$ z! G5 ]3 z5 O3 o            
3 o. ~  i( U2 S: S  w; oif (remainder who 5 = 3) [set k who
- X$ m' ~0 J# c0 K                          set x( Wid / 2)  9 E2 \8 |' c: b, P/ m
                          set y (0 - Dep / 2 ) ]. }) A3 V% F. O2 F7 U
                          set f int (k / 5) * 52 f8 Y1 }! w, M
  setxy   ( xcor-of turtle f + x )9 w3 [  t! p; D% G5 j
           (ycor-of turtle f + y ) + C+ c/ _  \& `6 Z0 _
           * }3 _' \: v: S" f& b: E7 P6 u- y
           
! q6 D% ?/ x3 T  }; h1 Xif (remainder who 5 = 4) [set g who
+ b3 g+ c2 g- e) _& z' ?2 a- r                          set x Wid / 2
+ m% x" H. ~; C6 l5 }% t9 }" Q                          set y  Dep / 2 ]
( x7 ?1 i3 J) p( `3 d0 V0 _; ~2 o                          set h  int (g / 5) * 5) i2 w7 c- S  F& ?; N! z7 R' @
  setxy   ( xcor-of turtle h + x )( d/ j* B4 O( F6 ]; q. b
           (ycor-of turtle h + y )
' i, x  d! s, r# f) k                          
/ M; e& j  E8 C! w7 Y: |1 I                          0 O3 a4 v) W% j" ~8 I- i1 x' ^3 S
                          ]
/ V+ N" u; W! n) [end
1 w" H* F$ p0 G. S2 Z! z
+ @0 R# u: x7 g: A2 s[ 本帖最后由 etamina 于 2008-4-10 16:41 编辑 ]

本帖子中包含更多资源

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

x
 楼主| 发表于 2008-4-11 13:26:12 | 显示全部楼层
已经解决了,
& a2 C1 ~# a! q5 I8 E应该是3 q/ f. G2 {0 U- _- j& |: Z1 X. p
ask turtles [
! h+ D6 k# p) X3 s" C' c; [if (remainder who 5 = 1) [set x ( 0 - Wid / 2 )
: O( n( z+ k( L9 S+ M6 y6 H                          set y  Dep / 2
  \9 _2 w+ S' G/ `' R* X           set b  int (who / 5) * 5: e" _2 V8 \2 T8 j8 l6 G
    setxy ( xcor-of turtle b + x )
) t) ]# T* i: D, }0 C- C          ( ycor-of turtle b + y )]]7 F  s: e* B, n
end$ @! i4 t( ~1 e) i- h) l
之前有个括号位置不对没发现
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-12-17 00:46 , Processed in 0.015357 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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