设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7755|回复: 1

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

[复制链接]
发表于 2008-4-10 16:36:43 | 显示全部楼层 |阅读模式
我的模型,原意是使得每五个turtle成一个矩形,这些矩形随机散布在一定范围内。. }6 P& R1 D! _, H* Y% ^0 n
5 `8 `- i5 A* U+ f
但是运行结果所有的矩形重叠在一起,只显示一个矩形。请大家帮忙看看。  F  [' ]1 j. G* S. x

& M9 X' v9 x; m1 Aturtles-own [a b c d k f g h
2 N8 A/ q. o- i! ?4 _0 J2 f  x y     ;; these are the leaf-turtle's offsets relative to center-turtle 8 N$ ^& ^$ t. D: S% S6 _0 c, n
]3 o, b! U; b: g  b0 W, E
to new
- G- l9 p- [, R  ca
' \! S4 j, _  `0 M  crt 5 * num_of_building
  i' n& r% K& J; {& k& ~  ask turtles [ifelse (remainder who 5 = 0) [set color red][set color blue]]
/ Y6 C" ~! L0 Y/ v9 d  scatter     ;;keep center-turtle random positions ) q5 P0 l, n/ ~6 S9 a2 ]
  unit_plan   ;;make up the building plan
5 \$ l3 g7 _2 x$ E% Yend7 G. b. Z5 T- X; i9 B$ M1 ^1 h
to scatter
$ f( g8 Y$ }  J% y4 Nask turtles with [remainder who 5 = 0]
3 d4 v+ N; q$ J" U% y[
+ ]# M, d- ?% g( h% G7 @" Qset xcor xcor - 6 + random-float 152 Z& m$ P$ P4 B8 l, L# w
set ycor ycor - 6 + random-float 15  F" k) V/ Q% O% A
]
. Q3 z; ?' S  I* v4 Eend
9 T9 N! Y  [6 J* P  \  Vto unit_plan 8 L" }7 D7 S8 j* M
ask turtles [4 u* K! g4 [0 e% ?" x
if (remainder who 5 = 1) [set a who
+ d0 o$ V4 }7 k- N1 a. [) P; {2 N# K                          set x ( 0 - Wid / 2 ) ' S2 X0 M$ e  E% R
                          set y  Dep / 2 ]
8 x' ]" F+ w" _# ]7 T7 e1 t) s           set b  int (a / 5) * 5
8 y1 q& O/ r- p% [4 A0 j4 P    setxy ( xcor-of turtle b + x ); M  d5 ^: N# e6 _
          ( ycor-of turtle b + y )
# _1 x, ]; L+ ]2 z& |5 b6 Aif (remainder who 5 = 2) [set c who: `! n( h: A; K- Q, E/ Q4 v6 B
                          set x ( 0 - Wid / 2 ) / w; k1 v' p$ G8 ^# ^
                          set y (0 - Dep / 2 )  ]5 x+ h# A) t7 J2 S, B
                          set d int (c / 5) * 5+ ]) K( Q4 V2 ~( T# a8 L3 ]6 Z6 S
   setxy   ( xcor-of turtle d + x )
7 U, {9 J  t" T; G           (ycor-of turtle d + y )
; @1 h7 }8 q$ O% A          , t( L( h; E& `! F' d, G
            ( p. i# p4 i' X- b
if (remainder who 5 = 3) [set k who8 V3 V& O$ x; W7 S' H+ s( n
                          set x( Wid / 2)  6 y' g! |2 A, ]* C7 l  |$ L, d- x' c
                          set y (0 - Dep / 2 ) ]
% l, M' p# a% m. H" W' l1 x                          set f int (k / 5) * 5
( t( a) t5 f6 y# _: `5 }' N# u  setxy   ( xcor-of turtle f + x )9 V( ~% D" w* c0 X4 Y2 H
           (ycor-of turtle f + y ) % B/ O/ j1 o% S$ |2 t/ w. y3 ?
             @* X- P2 r7 ]; |$ n7 D; n1 C
           
2 c  T, g% r' X. R! q% uif (remainder who 5 = 4) [set g who
& S# m& C, B3 ]7 g& I/ W- }0 }: E' G                          set x Wid / 2 : O! N4 m7 w% L5 Y7 n1 ?
                          set y  Dep / 2 ]1 D2 c' x+ Y) e7 P! s
                          set h  int (g / 5) * 5
! P2 ]8 I4 p7 z4 G* q, x4 U  setxy   ( xcor-of turtle h + x )- J) d% r! a+ {
           (ycor-of turtle h + y ) & q. x; t/ I* L8 y9 W( \( R
                          . f7 g* m" a1 ?  ?
                          " W7 m% V, I# Q0 x4 \
                          ]2 n4 }: ^8 J4 u, {+ z( B
end( y" X4 o0 {& I; i

' P( S9 K5 D3 H. i[ 本帖最后由 etamina 于 2008-4-10 16:41 编辑 ]

本帖子中包含更多资源

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

x
 楼主| 发表于 2008-4-11 13:26:12 | 显示全部楼层
已经解决了,
" P6 Q+ b8 D7 z4 h' ]0 ~$ |应该是
. ]8 R4 |9 V, u7 \! I+ j2 Cask turtles [2 g( A+ x4 y5 c( W, q/ g0 O
if (remainder who 5 = 1) [set x ( 0 - Wid / 2 ) & G! ^2 u9 R2 p- k; I
                          set y  Dep / 2 ; U4 e5 b6 |( w& E! g
           set b  int (who / 5) * 5# S7 ~1 P& Y0 y2 Z9 g4 R
    setxy ( xcor-of turtle b + x )
( S, B1 o% m9 v$ }9 }4 d          ( ycor-of turtle b + y )]]$ i+ [3 l, o6 H& n' o7 p
end$ i, n. R( H. I1 r
之前有个括号位置不对没发现
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-3-25 23:30 , Processed in 0.016744 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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