设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 6905|回复: 1

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

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

. Y, B1 `' S; `# z8 o/ N但是运行结果所有的矩形重叠在一起,只显示一个矩形。请大家帮忙看看。& u( U: S( f! u' |  n& `4 z' m3 }

* L* k6 U& V! K- R9 C  Fturtles-own [a b c d k f g h7 }& V6 ]5 k  }8 r: t) m
  x y     ;; these are the leaf-turtle's offsets relative to center-turtle
$ M8 l2 q, L8 k: K3 L], @( q0 M0 O, B: ?) [5 }9 f
to new  Z2 o8 ^. u7 H2 A
  ca6 A4 t5 D  i+ E
  crt 5 * num_of_building9 i& ]* O6 B  f& ]9 |- \. f
  ask turtles [ifelse (remainder who 5 = 0) [set color red][set color blue]]+ k% d$ M- b. d+ k! r+ ]
  scatter     ;;keep center-turtle random positions
2 ?( e4 z# x/ f2 [% u3 _  unit_plan   ;;make up the building plan
5 J+ i4 c; k! B" J* Rend
* ?$ I* j" S6 f- K: X) Pto scatter6 b" A4 l* F1 [* C6 ~- G
ask turtles with [remainder who 5 = 0]) c, A6 O" Y; R4 X" m  t
[9 ?" ]2 o& p1 B- J. T! F: F
set xcor xcor - 6 + random-float 15
8 d/ ?; ?- P- C3 Kset ycor ycor - 6 + random-float 159 r1 P( @7 w" C2 Q+ i  ]- L. q
]% O- e! v: D3 h  ~9 M9 d
end7 G0 P8 _6 H# t- I& Q
to unit_plan
# Q/ c2 M$ C/ n( z, Q, s7 {6 Mask turtles [* }2 Q* N: |5 Q
if (remainder who 5 = 1) [set a who + n  n6 W$ V6 T( u) s; J6 ~# U7 ^
                          set x ( 0 - Wid / 2 )
) h: B' c$ U; p. e! J3 E1 `                          set y  Dep / 2 ]
0 Z$ k% T9 n0 s3 F* x0 j! K3 |0 l           set b  int (a / 5) * 5( r! d: k& J% `7 x- w& _; g
    setxy ( xcor-of turtle b + x )9 @6 o$ U/ r& Z8 M7 y
          ( ycor-of turtle b + y )
8 q6 q; P- ?2 b9 R# n- Tif (remainder who 5 = 2) [set c who; M+ ?$ p* i  V) o7 F8 n. Y
                          set x ( 0 - Wid / 2 )
& I/ \" L8 F% f2 }# C$ b                          set y (0 - Dep / 2 )  ], x. w8 S- E) r
                          set d int (c / 5) * 5. v" j  w2 o% }5 o7 N  G7 x
   setxy   ( xcor-of turtle d + x )
: s+ x7 A( q$ g+ [( a           (ycor-of turtle d + y )
+ x$ o! r! {6 L0 U$ U          & k! i% g- R7 j# f
            $ o6 U& \9 m6 l; J) |* I: Y
if (remainder who 5 = 3) [set k who
1 l( s3 ]' U" n3 n                          set x( Wid / 2)  % b2 P5 C- ~8 ]" V/ `$ q9 E
                          set y (0 - Dep / 2 ) ]
5 t$ J% @  x7 k& E, y                          set f int (k / 5) * 5, @$ c5 h' M4 M" R4 `
  setxy   ( xcor-of turtle f + x )
! A( Q2 @9 z& G9 ]/ a) E  E           (ycor-of turtle f + y ) , R3 x- m; W' ]( v6 n; s' d3 R
           , j9 y; P3 ?8 \7 X5 y
           - c$ B: @7 k9 X9 e" E0 `6 c
if (remainder who 5 = 4) [set g who6 P) ?( E% ^2 h1 _3 B
                          set x Wid / 2
1 ]. P- V2 m" W1 t& y7 z6 t5 v' p, |                          set y  Dep / 2 ]1 h" j# \" P& G+ g( b
                          set h  int (g / 5) * 5. {" {5 M# k+ [
  setxy   ( xcor-of turtle h + x )  U. f! y4 M/ [+ H
           (ycor-of turtle h + y ) . X6 E4 b: y( t. M
                          
' S4 D# O1 x  }                          $ E; v9 U+ H: u" E9 `
                          ]' X& M% q% ~" [9 x
end5 I3 f2 Q/ Q/ H7 N( E" t

& Z4 C( _8 [% H  s7 S# K" V[ 本帖最后由 etamina 于 2008-4-10 16:41 编辑 ]

本帖子中包含更多资源

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

x
 楼主| 发表于 2008-4-11 13:26:12 | 显示全部楼层
已经解决了,
0 `2 `& v* e" o. D) e. ^应该是
1 A) I/ H3 t; \' K* bask turtles [
1 c# }2 J+ c5 B  _0 D* S4 _! o( tif (remainder who 5 = 1) [set x ( 0 - Wid / 2 )
9 L  m( A: G' B& _# W4 M                          set y  Dep / 2
* ]0 \9 F4 }( s' v( @           set b  int (who / 5) * 5/ h$ \7 H0 V' \* U( r9 W. B6 n
    setxy ( xcor-of turtle b + x )
6 ^- |* v2 A9 Q% A: W; W& e; p          ( ycor-of turtle b + y )]]
7 v4 A  B# o4 g. ]. }, |6 Send$ Y3 m! m* l1 L) v3 ], j/ k
之前有个括号位置不对没发现
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-12-8 15:47 , Processed in 0.015788 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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