设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7982|回复: 1

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

[复制链接]
发表于 2008-4-10 16:36:43 | 显示全部楼层 |阅读模式
我的模型,原意是使得每五个turtle成一个矩形,这些矩形随机散布在一定范围内。
0 j! {' M' U3 Y* I( W* ?% M0 M
# k8 b; b" k+ M% ~0 a5 O9 ?但是运行结果所有的矩形重叠在一起,只显示一个矩形。请大家帮忙看看。0 N/ E5 T7 Q3 b, S( U$ R4 K8 L

) I7 Z2 a% N: h8 oturtles-own [a b c d k f g h1 W3 n2 q) l! B
  x y     ;; these are the leaf-turtle's offsets relative to center-turtle
. L; I  J$ V1 Z; N; }]
5 x6 D3 G( d" R! W3 D, x( ?$ u2 \to new0 `' [) z" Z( t# q* T/ }* V  q
  ca
) N& [: b4 D9 ]% }, D  crt 5 * num_of_building
0 |( r, U  d. [+ I/ q  ask turtles [ifelse (remainder who 5 = 0) [set color red][set color blue]]
; V( Q7 b1 o, U# d  scatter     ;;keep center-turtle random positions + g2 c8 S. p! ?
  unit_plan   ;;make up the building plan
1 I( M, Y% _0 u+ _# j( ]end
* {: n. e6 U6 |0 d4 }: B: rto scatter3 `, v( P+ p7 y
ask turtles with [remainder who 5 = 0]
$ J. }' u* _% P. S" Q! }[! M2 i9 V4 b. \8 y- ]
set xcor xcor - 6 + random-float 15# s# |0 O7 o  e# ~' [
set ycor ycor - 6 + random-float 15% W7 y: j  D( {4 C
]: H/ \: v( |5 j  ^2 z0 C- P/ ?' S
end
5 v- f! b) i- ~. W& c' E8 `0 mto unit_plan 2 C) x1 k* D3 }2 f
ask turtles [
2 U: b. X  j, ?4 y4 E: {8 Eif (remainder who 5 = 1) [set a who & l2 H6 A9 Q3 v8 L) J2 f
                          set x ( 0 - Wid / 2 )
* L. O: f9 M2 ]& w                          set y  Dep / 2 ]+ D+ g  n- T$ D
           set b  int (a / 5) * 57 x& [) v: ]3 h# A6 U2 i: U
    setxy ( xcor-of turtle b + x )
/ G! f. Z% w( ]' L7 b          ( ycor-of turtle b + y )
' H1 H( A" O/ r9 G5 R( h+ z; cif (remainder who 5 = 2) [set c who
/ e8 N! |4 z& x" J                          set x ( 0 - Wid / 2 ) 8 I* i2 w( e& \+ c7 h
                          set y (0 - Dep / 2 )  ]
7 P% a& E3 i0 Z- g% J1 O$ T                          set d int (c / 5) * 58 E, z, @; P9 [. ~1 V8 g
   setxy   ( xcor-of turtle d + x )0 d  H& F' O/ r
           (ycor-of turtle d + y )
: r! {2 e9 ]# C; c0 M& [( c; T* k         
7 H# |; J( g8 U8 c            
0 g8 N" |; v7 f1 S6 }0 u7 h# mif (remainder who 5 = 3) [set k who
  a: V+ J4 U9 G" I                          set x( Wid / 2)  , w0 d/ J' m0 S- p- `, Q4 k- B- l7 V
                          set y (0 - Dep / 2 ) ]5 c2 [# q) C2 {, ~7 X
                          set f int (k / 5) * 5+ D9 n/ z' f3 k  d  m0 m& E
  setxy   ( xcor-of turtle f + x )
/ V9 W+ a- X7 q. @+ T           (ycor-of turtle f + y ) - C' R: {% N/ |+ A* t
           
! K( d& _  v  u/ j0 s+ G8 x/ R           
! f9 `9 K( m0 B3 k) @; lif (remainder who 5 = 4) [set g who7 j2 D0 c4 L# L5 c( x0 ]
                          set x Wid / 2
9 x- |+ r' J) ?5 x$ W2 F                          set y  Dep / 2 ]4 t8 f  n; O9 Y7 K0 {8 b& U
                          set h  int (g / 5) * 5/ T+ U) R) s6 A& h4 G, @
  setxy   ( xcor-of turtle h + x )6 ~) H+ _  |5 N* v5 J
           (ycor-of turtle h + y )
( M3 Q! u- s  m3 t8 m; |9 W7 d                          0 [! d) R7 Q5 r& l! O8 H
                          $ q9 U. P! |- n% }( K" M9 |8 C8 e
                          ]
  X, r" z& @; R. r) `; wend
. v* \, X3 M! y$ Q. j  m! k. _3 z9 F0 D3 Q# ~% v- j+ H( W
[ 本帖最后由 etamina 于 2008-4-10 16:41 编辑 ]

本帖子中包含更多资源

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

x
 楼主| 发表于 2008-4-11 13:26:12 | 显示全部楼层
已经解决了,
% a  Z  F+ P9 @" I应该是2 _- i) s  g' g
ask turtles [
( m* X) c$ z2 T6 U2 q+ J/ [5 Wif (remainder who 5 = 1) [set x ( 0 - Wid / 2 ) 9 j) y; g) s3 {, x+ E
                          set y  Dep / 2 6 X9 @: T3 A7 X1 ]* r5 d
           set b  int (who / 5) * 5% S8 A/ m) I% w8 j1 ]8 l
    setxy ( xcor-of turtle b + x )
. Y4 v1 f& A% k# Y          ( ycor-of turtle b + y )]], t: p; a3 @1 I1 g; h4 T
end2 ]3 N- {1 B0 S' _1 u( X
之前有个括号位置不对没发现
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-4-24 17:14 , Processed in 0.019839 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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