设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 6833|回复: 1

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

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

3 B( m4 g( d# _  @- F' B3 ^& ]但是运行结果所有的矩形重叠在一起,只显示一个矩形。请大家帮忙看看。
, U9 A; ]* M* O- O
6 `7 y4 H' |2 o! M9 Bturtles-own [a b c d k f g h( r9 F; _; W& ?3 F4 N' n' z; @5 T+ d
  x y     ;; these are the leaf-turtle's offsets relative to center-turtle : g) y: Q; k0 P# d3 Y
]; K4 {) k) y$ d- t3 K+ M% \8 e; e! Q
to new& z. U( T: [' x5 }- e1 P
  ca3 N( w' A2 |, Z/ c# P' ?, D
  crt 5 * num_of_building7 z9 v# O9 V7 i9 j3 V7 q
  ask turtles [ifelse (remainder who 5 = 0) [set color red][set color blue]]( a3 X$ f) I* g- K
  scatter     ;;keep center-turtle random positions & X$ ?- ?6 q" I. Y; q2 q7 _1 ^! N9 N
  unit_plan   ;;make up the building plan
6 [8 m; D9 ~! `6 Qend
" W4 Z) V# P' S. k! Eto scatter( ]4 P8 g7 d" \* `3 n4 T
ask turtles with [remainder who 5 = 0]  N) R0 S' F) O- {7 `; M# P
[7 ?& v4 S: \* R2 h
set xcor xcor - 6 + random-float 15) g0 R' ?) b5 ~5 v1 z9 d& D7 ^
set ycor ycor - 6 + random-float 15
8 W; C' B9 ^! \" a" M]
5 ^' U8 m  \# e3 e0 P4 hend
* `+ X/ P2 F/ p+ R- ?  @6 rto unit_plan 5 b2 g5 V4 O! ]+ M4 z
ask turtles [. m5 `. B5 I7 V: \
if (remainder who 5 = 1) [set a who 4 |) v* u* C' t: f
                          set x ( 0 - Wid / 2 ) / I! N- V& R4 q
                          set y  Dep / 2 ]! F8 K0 B4 K' Y0 U3 \6 I7 z# r
           set b  int (a / 5) * 50 ?0 T  J6 d0 h; T5 p! A
    setxy ( xcor-of turtle b + x )
% W, x0 H4 e6 ]* h          ( ycor-of turtle b + y ), e6 v2 Z4 w2 h, [
if (remainder who 5 = 2) [set c who
8 ]8 }2 Q9 {( P                          set x ( 0 - Wid / 2 )
% u( h1 e3 @  _% A" V                          set y (0 - Dep / 2 )  ]
8 R8 o- t; j" ?! F' T8 H                          set d int (c / 5) * 5
( O; H; }/ a' k# c+ r  I   setxy   ( xcor-of turtle d + x )
8 ?4 H/ D( E$ S0 `' e# F           (ycor-of turtle d + y ) 3 X1 L- j4 r. q. \% w3 o5 |) F1 h
         
/ L; {* K! Q  \# ?4 t            
& [4 P* N5 i7 W# j4 S5 K- [if (remainder who 5 = 3) [set k who6 s" V4 m# b0 a/ c
                          set x( Wid / 2)  4 w4 W9 @0 u& T( f; ]: L
                          set y (0 - Dep / 2 ) ]
' v! v+ I7 Q- o, ~9 R. r0 {                          set f int (k / 5) * 5
  c- x1 h' X, V  setxy   ( xcor-of turtle f + x )* Y' C8 k6 J* B
           (ycor-of turtle f + y )   D$ p" |" ^  r4 L
           8 k5 p5 f6 b$ n# L) k$ n9 M
           + U. X( C/ W6 P0 B6 J
if (remainder who 5 = 4) [set g who- G; k- P4 e0 f* L* P1 B' C" p
                          set x Wid / 2
0 M5 {$ i9 J( n6 j% O                          set y  Dep / 2 ]
: C: e1 L! T$ f( m4 W" g- o                          set h  int (g / 5) * 5
$ K- L6 r9 `) _5 ?  setxy   ( xcor-of turtle h + x )
! J$ Q  C( M+ A2 J5 c# `8 r           (ycor-of turtle h + y )
) D* G' l/ Q) X1 S7 e8 P0 [                          ! S8 Z, F4 F6 X7 w1 Y7 [! Y, i
                          
1 [! N* a  M- f4 U; x( v                          ]7 s) U, X8 w+ ~+ c0 v
end
  a6 S; R3 f% I- \; Y1 c
: x/ L  }0 J6 u. ]& n[ 本帖最后由 etamina 于 2008-4-10 16:41 编辑 ]

本帖子中包含更多资源

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

x
 楼主| 发表于 2008-4-11 13:26:12 | 显示全部楼层
已经解决了,: r- Z: n1 C) B: ^# Y* n! L
应该是
# K7 S1 H  }  f2 Pask turtles [
( c- `) B7 J) {* t4 sif (remainder who 5 = 1) [set x ( 0 - Wid / 2 ) 4 \  L+ Y( `" H0 n
                          set y  Dep / 2
9 u. [+ N! \1 z# [; ?           set b  int (who / 5) * 5
* r1 F# M0 m/ Z/ S' f    setxy ( xcor-of turtle b + x )
- W5 `5 o8 k2 q# w- p          ( ycor-of turtle b + y )]]/ ~* U& e' I" E/ i& `) J
end8 G( o4 e6 @0 V/ j9 B8 I$ I8 S
之前有个括号位置不对没发现
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-11-27 08:21 , Processed in 0.018443 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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