设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 8457|回复: 1

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

[复制链接]
发表于 2008-4-10 16:36:43 | 显示全部楼层 |阅读模式
我的模型,原意是使得每五个turtle成一个矩形,这些矩形随机散布在一定范围内。3 y- y  n+ }  H" n- o
* L7 o0 f' }$ a, y3 j
但是运行结果所有的矩形重叠在一起,只显示一个矩形。请大家帮忙看看。
6 B; c/ u+ h0 B: M
/ y" i& Z4 g0 V* d9 {1 kturtles-own [a b c d k f g h
# k+ P6 ~7 x, ^  I$ U  x y     ;; these are the leaf-turtle's offsets relative to center-turtle
# j% B: w0 K4 `8 c5 w- J+ E]
1 U+ B6 `) v/ D/ _; eto new
9 x0 V  O) G$ _, M3 p  ca, k: C7 K" @# l0 |3 M
  crt 5 * num_of_building
: g& j# W$ E) |* r2 d. V! ]  ask turtles [ifelse (remainder who 5 = 0) [set color red][set color blue]]
) f1 l3 m4 e0 ^& [; S  scatter     ;;keep center-turtle random positions
! z1 o  ?' M6 o; {1 f  unit_plan   ;;make up the building plan
: r# x( i& Q& K6 Y2 d# x5 send
* _7 U5 t5 X" m3 U% {" Bto scatter
! ^% Z$ z- F- K6 R9 R# A/ E- n7 B0 H5 c, Oask turtles with [remainder who 5 = 0]
. i) h0 Q6 P5 ?! f* P" p" G7 M& Y  e[; b  U: A9 G7 i6 B
set xcor xcor - 6 + random-float 15
4 Y- r7 ~6 v& rset ycor ycor - 6 + random-float 15
$ A* ?$ h, p) }- X$ }1 @]$ b4 K& N5 ?9 B' R. i; G
end
$ M1 i8 u* O. V* g0 {to unit_plan 2 r: F% c4 w, K
ask turtles [5 I8 d) |! B' y2 r" m! U8 T+ Q
if (remainder who 5 = 1) [set a who
& \! p/ N& D: d2 O! H4 v4 c9 Q                          set x ( 0 - Wid / 2 )
1 W: c" ]) u) k4 V4 W                          set y  Dep / 2 ]
; L' w* h: [0 C% c% ?. ~- Q* R           set b  int (a / 5) * 5% j  }. \5 Q; V
    setxy ( xcor-of turtle b + x )
- J' Z; b  t1 o$ n; Z. x          ( ycor-of turtle b + y )
, e+ E3 h+ u" v( N) \5 W$ yif (remainder who 5 = 2) [set c who# s6 P2 N! c2 @8 M( P2 r
                          set x ( 0 - Wid / 2 )
8 T+ v+ t/ r1 `) q7 U                          set y (0 - Dep / 2 )  ]
9 t% X% B# E7 V9 x- F  o; h) ~                          set d int (c / 5) * 5( u. ?& S, G, b  g0 o5 H, g% {. Y
   setxy   ( xcor-of turtle d + x )* `7 N. n* s0 J& R
           (ycor-of turtle d + y ) % A, {$ t& u. r9 y' s' z2 u
          6 {9 `; M: ]# g9 @7 m0 C! J( {
            / ?; v3 A, @" p" O( a# f
if (remainder who 5 = 3) [set k who
1 e5 b" s: K7 Y                          set x( Wid / 2)  " Z  a1 U. P2 h" F. W
                          set y (0 - Dep / 2 ) ]# Z  E# c& e' B; I; w, v
                          set f int (k / 5) * 5
# |+ P  L& ~! u4 ]. j  setxy   ( xcor-of turtle f + x )& i# \% Q/ {- p4 I, u
           (ycor-of turtle f + y ) / _2 f; U. j  x8 l
           
4 Q; _! @) j0 ]2 P           ! p# d, z2 W- k. z- I# M# o9 X, c
if (remainder who 5 = 4) [set g who
4 P- ^* }. l' H4 V  O                          set x Wid / 2
, k- T  k7 I$ I3 D4 V1 S* n                          set y  Dep / 2 ]" h* I4 F3 l4 {" N7 f. p1 b
                          set h  int (g / 5) * 5
8 F+ ?) R+ Q1 Y# u6 y  setxy   ( xcor-of turtle h + x ). a6 E1 L9 D; D4 {; w
           (ycor-of turtle h + y )
- _2 R* m: S# {; v                          
6 A. y, c* ?+ Z. X+ \+ R* S6 k                          % z6 e- g, t8 F) [7 ^; p/ ~
                          ]9 Z) u! Y! b( M- {9 V! n
end/ f! r3 d9 x( ]8 i1 s3 ]

& w5 s6 S( |8 {6 s[ 本帖最后由 etamina 于 2008-4-10 16:41 编辑 ]

本帖子中包含更多资源

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

x
 楼主| 发表于 2008-4-11 13:26:12 | 显示全部楼层
已经解决了,
( h9 P9 Q& h6 l3 j, i应该是5 F% ]- X* a% u- m4 B
ask turtles [
8 {2 Q0 w5 S! v2 V( \5 Tif (remainder who 5 = 1) [set x ( 0 - Wid / 2 ) 7 H( P3 }* I& E9 U: S2 a8 a
                          set y  Dep / 2
" g9 c" Z, a" O           set b  int (who / 5) * 5; S1 I0 `. F( t/ C, E/ K1 S
    setxy ( xcor-of turtle b + x )* N' g( h. t* E# }4 c4 Q5 k" Z& w
          ( ycor-of turtle b + y )]]% J6 F- }1 S, m" t% @, U
end4 n  R9 |- ^' v( e) {
之前有个括号位置不对没发现
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-6-28 16:46 , Processed in 0.021071 second(s), 16 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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