设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 8105|回复: 1

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

[复制链接]
发表于 2008-4-10 16:36:43 | 显示全部楼层 |阅读模式
我的模型,原意是使得每五个turtle成一个矩形,这些矩形随机散布在一定范围内。% C' D7 w: E* }; q, Q/ u

5 w5 d% l( U2 n/ x  v# ~, x6 S但是运行结果所有的矩形重叠在一起,只显示一个矩形。请大家帮忙看看。
6 [, O2 F/ D1 N) W' W" |; \% Z' s; e; r+ J5 z" l
turtles-own [a b c d k f g h
3 ]# g3 T- I' _6 @$ p  x y     ;; these are the leaf-turtle's offsets relative to center-turtle - F' m5 I+ L2 E1 J5 M9 @/ B
], x" o. C! {7 w4 I, h
to new9 w. x) I7 t$ n4 U8 F, S" V
  ca
! `! O+ ~  A& O' L" e  crt 5 * num_of_building
! H5 L- a  Q9 Q4 R  ask turtles [ifelse (remainder who 5 = 0) [set color red][set color blue]]* J* t, G* e$ g# g( T* [% o, i: s
  scatter     ;;keep center-turtle random positions
0 O6 N- b9 }: D7 @  unit_plan   ;;make up the building plan! o! M% w, E2 @2 P+ {
end
$ I: H5 P7 v5 q8 D  E0 Kto scatter9 j+ _0 y: V1 O) M* a3 J
ask turtles with [remainder who 5 = 0]
( h" {% A7 u: o* K9 J$ j6 o# n/ d6 w[% ?  B# v' W+ g, y% }1 ~
set xcor xcor - 6 + random-float 15
5 [* g- j( I. C) Z- o; V2 \/ Y8 Z  rset ycor ycor - 6 + random-float 15+ z$ }  {: @; l& F
]
. _& @* j  R' w7 Aend
4 U) t- v$ n. u" H% F. N7 Z- qto unit_plan
2 ^% g, f3 c; y% {+ h( t" Qask turtles [: ]5 R1 c+ ]& k+ e9 W
if (remainder who 5 = 1) [set a who # Q" c. ^8 {6 N1 A0 U9 E
                          set x ( 0 - Wid / 2 )
: s4 [, Y$ s. \/ u5 q% a9 l8 Q: @                          set y  Dep / 2 ]
& u" c+ C& c. M3 ^$ I, r& ?           set b  int (a / 5) * 5- A8 n9 H1 T" |% z
    setxy ( xcor-of turtle b + x ): J" i$ b- _) F4 W6 I) X7 a' V
          ( ycor-of turtle b + y )) z1 a, W- z& S$ p, U2 m
if (remainder who 5 = 2) [set c who
% w/ t. }2 J3 f! [& x9 S; P                          set x ( 0 - Wid / 2 ) & `1 @- ?/ S: r( i$ M$ R
                          set y (0 - Dep / 2 )  ]0 Z' g: X/ j+ F3 V& X* Z
                          set d int (c / 5) * 56 E5 l' _+ [4 F
   setxy   ( xcor-of turtle d + x )
2 o/ \7 w3 c+ F1 R6 s( r  o" f           (ycor-of turtle d + y )
! U$ M$ z: q; r$ Z         
0 Z0 x- a# a0 ]# V            6 ^$ \! J7 u. M* p# H" Z6 s" S& P
if (remainder who 5 = 3) [set k who6 b2 O& Q8 c4 I% H( g. t7 u
                          set x( Wid / 2)  
" R, x  R% S; ^7 G) q                          set y (0 - Dep / 2 ) ]0 I3 ^5 r1 \/ w
                          set f int (k / 5) * 50 P5 I  ^4 Y# v0 a) l
  setxy   ( xcor-of turtle f + x )) |: m1 @3 E6 I% T
           (ycor-of turtle f + y ) 9 n* `/ U& h7 }/ G* O* E9 ]
           5 h9 R+ b3 U) @+ H1 y! ~) N- l
           
2 k& I9 W) R$ hif (remainder who 5 = 4) [set g who
) |' X2 }1 a3 q                          set x Wid / 2
; _) X$ m5 b. Y                          set y  Dep / 2 ]! ^4 _3 B1 X. r$ @" c0 W3 f5 K5 ?
                          set h  int (g / 5) * 5' }( [) C8 R1 m
  setxy   ( xcor-of turtle h + x )
$ O4 e4 |- @/ h9 ~           (ycor-of turtle h + y )
: ^5 ?* g- l: }1 h                          + @1 x. ]' _$ K3 ?! J
                          - X% W8 k3 Q( p- q
                          ]) S' C" |* p* ^: ?- J
end! O- D& J) _  l/ w+ {; w  o

6 x$ y8 a5 ]/ O% W[ 本帖最后由 etamina 于 2008-4-10 16:41 编辑 ]

本帖子中包含更多资源

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

x
 楼主| 发表于 2008-4-11 13:26:12 | 显示全部楼层
已经解决了,6 }2 \* e' r* T+ M7 k9 R* f4 `9 U
应该是! v' P6 w7 j8 i6 O! b
ask turtles [) ~3 k" H# T! r4 j2 e( A. ]
if (remainder who 5 = 1) [set x ( 0 - Wid / 2 ) $ E( E4 `9 h. Q9 W2 }) D- H& V
                          set y  Dep / 2 5 A$ s  j& y2 m0 R
           set b  int (who / 5) * 5  a- s5 R  H/ M, h+ O$ _7 {
    setxy ( xcor-of turtle b + x )
4 j! M1 N! m( z& v: z3 ]" O          ( ycor-of turtle b + y )]]
  [' n) e: ]' ~/ e5 T6 xend
+ s& \; P% T3 ]& r之前有个括号位置不对没发现
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-5-8 03:51 , Processed in 0.018498 second(s), 16 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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