设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 8175|回复: 1

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

[复制链接]
发表于 2008-4-10 16:36:43 | 显示全部楼层 |阅读模式
我的模型,原意是使得每五个turtle成一个矩形,这些矩形随机散布在一定范围内。! g( M0 N4 ?, m, z
9 E9 s" I9 b1 z( O- u
但是运行结果所有的矩形重叠在一起,只显示一个矩形。请大家帮忙看看。
5 l% H& B7 X4 J- t
( a% L" L4 J  S3 O5 eturtles-own [a b c d k f g h
7 d5 O5 l1 W# @) a; a# B2 l& \  x y     ;; these are the leaf-turtle's offsets relative to center-turtle
: X! `. s. M9 T) X! s4 C3 W" n]/ u" i/ h6 o1 Y+ Y
to new
# `+ E7 m; y: V- l1 V. }8 v  ca
) ]5 O7 T2 i/ R2 H7 v  crt 5 * num_of_building
/ x9 j5 K& l$ {  ask turtles [ifelse (remainder who 5 = 0) [set color red][set color blue]]
2 _. V# y9 n0 |7 l- M* D. W  scatter     ;;keep center-turtle random positions 2 W. |' \* k9 f
  unit_plan   ;;make up the building plan  u$ }! V& t% }: V& |3 d: Y
end& @; `" b: R) E$ F$ j- w
to scatter2 Z( W. R9 @% K* b1 X- u
ask turtles with [remainder who 5 = 0]
$ V, |  C: U4 w. u8 V* j[2 j6 ]# N1 G8 ^" Z" @
set xcor xcor - 6 + random-float 15, m  y4 G& m7 `, l
set ycor ycor - 6 + random-float 15
5 b- L  c6 d- `; f]; T: n0 j1 a4 I. m. Y4 q
end
9 b; n* _, [9 w" ~" s+ Wto unit_plan
+ `/ u0 Q, S* ^: r/ [. Nask turtles [
, o& X# Q0 Z- G8 a5 Zif (remainder who 5 = 1) [set a who
" \- L1 s9 N8 ~8 R                          set x ( 0 - Wid / 2 )
3 v$ }- P, [' }0 k                          set y  Dep / 2 ]8 @: B2 i2 P0 S6 Z3 a
           set b  int (a / 5) * 5
% K3 _4 F+ I& W9 N, [/ X    setxy ( xcor-of turtle b + x ). j/ h# T3 X  ]6 `$ L  |/ e! m1 g
          ( ycor-of turtle b + y ), p& u7 |$ B, U* z: Z8 M
if (remainder who 5 = 2) [set c who% M: g; c' d' o0 ~, `. O
                          set x ( 0 - Wid / 2 )
+ ^* b& n; y/ M" _. T                          set y (0 - Dep / 2 )  ]
1 \, z( k' ~6 |  Z' f                          set d int (c / 5) * 5
0 K% N; s) I% T1 ?. m   setxy   ( xcor-of turtle d + x )
, W/ y& @6 h- n% B! c5 }           (ycor-of turtle d + y )
) J- u3 X! Y3 J. v, T         
$ @$ C& V/ c7 V            
! f/ N4 s: B  w$ Wif (remainder who 5 = 3) [set k who# N; m1 F6 h  T
                          set x( Wid / 2)  
! V' V6 O3 e, d& O/ r, b3 m                          set y (0 - Dep / 2 ) ]
# d" k4 [! y! z6 |  H  v6 P2 i) |2 H                          set f int (k / 5) * 5
3 q2 g0 S0 \' X* `9 v- J, j  setxy   ( xcor-of turtle f + x )4 u8 F3 m6 m4 ]% N
           (ycor-of turtle f + y )
2 W" H; }# X& s9 k$ `* I4 o; d           4 Y& C( {0 I0 l4 h& U+ i( \4 a
           2 U: j9 u4 n+ t0 i% b' j" Y) E
if (remainder who 5 = 4) [set g who5 I) R) n6 V/ O7 r1 a( E) N$ x
                          set x Wid / 2   w, L. G# u" M4 k! w. ]! R# I
                          set y  Dep / 2 ]
9 x/ d# [& ^) t  J" M5 [9 d6 U% ]                          set h  int (g / 5) * 5
5 V7 k+ w4 ?6 @; Q( J3 E' ~/ Y  setxy   ( xcor-of turtle h + x )
' K4 i% w) T( A% K8 m2 s           (ycor-of turtle h + y )
% R+ x  T( K* _" x                          3 F! B' S& S2 w9 {4 w
                          
1 g4 N7 j+ L6 T; |: l0 N4 r                          ]" i1 ~( ]$ g6 n6 ~+ _" m. m, L
end
6 v. b+ {0 z; n( q3 F. `9 N! K
+ W5 _# g4 A- Y6 V/ U& }. ]+ W* T[ 本帖最后由 etamina 于 2008-4-10 16:41 编辑 ]

本帖子中包含更多资源

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

x
 楼主| 发表于 2008-4-11 13:26:12 | 显示全部楼层
已经解决了,
4 f$ Y. D- W4 Q3 N$ b0 V: ]) n( Y应该是  T; V+ _) U" Z9 w% V+ R1 `  o( c0 t
ask turtles [
: Q: f, `8 v' u& k8 uif (remainder who 5 = 1) [set x ( 0 - Wid / 2 ) ! U/ d" B, }' |5 J
                          set y  Dep / 2
3 R% c  a, p# f9 U           set b  int (who / 5) * 5
6 q8 t5 l! d2 b! [, V3 @    setxy ( xcor-of turtle b + x )
2 ^! y  B/ w( G  l0 S, w9 ~7 D          ( ycor-of turtle b + y )]]
: I% G* i* k! f6 R% k# rend
( h* f6 Z$ l! C  \7 |5 y8 t之前有个括号位置不对没发现
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-5-14 16:23 , Processed in 0.018489 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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