设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 8325|回复: 1

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

[复制链接]
发表于 2008-4-10 16:36:43 | 显示全部楼层 |阅读模式
我的模型,原意是使得每五个turtle成一个矩形,这些矩形随机散布在一定范围内。
+ m8 g# Y" w% d  Z% F4 p, J% {# q' q; r
但是运行结果所有的矩形重叠在一起,只显示一个矩形。请大家帮忙看看。# g" F) K6 X, ?0 l

0 j& ~: \0 h( O8 q  ~turtles-own [a b c d k f g h. s1 T7 n2 d! }1 q# y- K' x
  x y     ;; these are the leaf-turtle's offsets relative to center-turtle / p% m' o& L: u" }$ b9 C7 n
]
# \( ]4 h; E7 V. O7 `to new
2 b; Q4 {, s5 `7 F9 G/ l  ca
- L( _: K% W3 c/ |9 f  crt 5 * num_of_building' q+ w, Y- W) G$ r1 _4 K9 x
  ask turtles [ifelse (remainder who 5 = 0) [set color red][set color blue]]
% Q" K2 u# l; I4 O/ u. q! X% ^# v  scatter     ;;keep center-turtle random positions
, d1 u# _+ V: l( q- x  unit_plan   ;;make up the building plan4 }2 b- u" |9 o5 Q, f0 y
end
& n3 q( i+ q) S! dto scatter
0 b( P! `  h& d- N; p) Uask turtles with [remainder who 5 = 0]
" m: X0 \, M) A8 n! f' |9 _[" H& [/ L. E4 I- _
set xcor xcor - 6 + random-float 15
) x9 Z* Q% u. e# t0 Pset ycor ycor - 6 + random-float 15
- Q* m8 a1 k5 L. J7 \6 |]
" n8 p0 [! k- X' k+ P. x0 b1 O- kend
+ ^2 {4 g; p& i: h. `- o! S: {% }to unit_plan 0 T6 e  @! }/ {- O+ h
ask turtles [
+ k; N0 A2 I9 u; s" n, k4 Nif (remainder who 5 = 1) [set a who
2 P: C8 c$ `/ q                          set x ( 0 - Wid / 2 ) - u& M" @: I/ Y9 p
                          set y  Dep / 2 ]* F: y, C8 \: o$ \( s. M
           set b  int (a / 5) * 5+ |$ _, `" f; T6 n* D
    setxy ( xcor-of turtle b + x )& @4 w  _4 |# D2 y9 G5 |
          ( ycor-of turtle b + y )5 f3 K$ ?8 i# W& R/ t
if (remainder who 5 = 2) [set c who9 N' `9 v$ M' J5 x* D
                          set x ( 0 - Wid / 2 ) 3 {4 A  Y( d/ ~5 k+ F8 @8 r2 f/ N
                          set y (0 - Dep / 2 )  ]
5 z, p5 f! f, x2 c4 E: z5 ~                          set d int (c / 5) * 5
" M' L( M& H1 ^* u- L( K$ `   setxy   ( xcor-of turtle d + x )7 j8 `1 |9 p0 `# j3 E
           (ycor-of turtle d + y )
8 I; D6 r" R( l         
$ M2 d  h4 b) [# N, ]            
% X5 X6 q- c" _2 [* G2 o  Cif (remainder who 5 = 3) [set k who# M5 J9 R$ W: {- r/ K% m
                          set x( Wid / 2)  
3 h6 J) f! x) g" a. D                          set y (0 - Dep / 2 ) ]
" K. W! U: j# p9 J2 _' v- {- c                          set f int (k / 5) * 5" z( M7 s  _' L/ }# u
  setxy   ( xcor-of turtle f + x )
3 W% t; }$ Z  q           (ycor-of turtle f + y )
- m+ a8 K9 m, U& d$ z( W           
9 [' l- y+ C) R& @5 p           # Y0 H! Q; v( l! T2 W7 T. g
if (remainder who 5 = 4) [set g who7 |3 K+ @& ~# l/ _
                          set x Wid / 2
3 A- H" r; V. [. s$ s) b; J                          set y  Dep / 2 ]& }7 a4 Y; r9 U9 H; v
                          set h  int (g / 5) * 5
6 o4 d! F- Z' \6 `, h  setxy   ( xcor-of turtle h + x )
8 w* ?, C* P, d) X8 h           (ycor-of turtle h + y ) 4 K" ~( ?( ^. L0 Q
                          ( ]$ n- ^( R+ s7 Y. D  a
                          
0 a( m7 r$ T; M: h9 X                          ]
0 W; Q) F) l3 \" Oend
/ A* u+ y- \# ^* _. B# _3 ^: b) I$ @1 F: a+ A
[ 本帖最后由 etamina 于 2008-4-10 16:41 编辑 ]

本帖子中包含更多资源

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

x
 楼主| 发表于 2008-4-11 13:26:12 | 显示全部楼层
已经解决了,4 C7 @: Y3 \  C4 l; y6 Q1 O; P
应该是
9 _& B% b& a" c/ Cask turtles [
6 D) R- c4 L# j5 B7 c! t, W+ sif (remainder who 5 = 1) [set x ( 0 - Wid / 2 )
- }3 v- e5 m$ }; w                          set y  Dep / 2 " M+ t: {  a2 S  U2 k4 V% y. p
           set b  int (who / 5) * 5
. Q- A0 e6 B- D. a    setxy ( xcor-of turtle b + x )8 o: v$ H7 b0 f+ y! R. z
          ( ycor-of turtle b + y )]]
  X( K3 @9 ~  Z9 E% J  Cend8 C/ H# P! y% M* {% F4 D8 D
之前有个括号位置不对没发现
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-6-7 18:33 , Processed in 0.015485 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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