设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 8287|回复: 1

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

[复制链接]
发表于 2008-4-10 16:36:43 | 显示全部楼层 |阅读模式
我的模型,原意是使得每五个turtle成一个矩形,这些矩形随机散布在一定范围内。
$ E$ W9 b# u4 R9 j
, `4 n  N2 I) b7 t但是运行结果所有的矩形重叠在一起,只显示一个矩形。请大家帮忙看看。# {& O- S# o8 W+ N$ E. ^

' a2 I0 M) O$ B/ Z, U2 P5 Dturtles-own [a b c d k f g h
) @; q) g" a: v  ?  x y     ;; these are the leaf-turtle's offsets relative to center-turtle 4 C- E- q' i6 Y. z: c
]1 ]# l) L# i7 U
to new- O" _$ y2 q4 W& v; \
  ca
5 j5 K& i+ b3 u5 O+ k7 B& k  crt 5 * num_of_building
2 `7 I* v* m! p3 P3 u. O  ask turtles [ifelse (remainder who 5 = 0) [set color red][set color blue]]
: {+ w: n' l- Q8 D  scatter     ;;keep center-turtle random positions / K  l6 O: W, m
  unit_plan   ;;make up the building plan  G. l+ z9 V+ W  M5 P
end, M) k( j% \- u2 a9 w
to scatter, N: l8 p7 E3 b- ~/ m, r5 E& |
ask turtles with [remainder who 5 = 0]
0 O5 ?1 y, D, W3 v& m) n/ F[, ?! g8 {' H( q
set xcor xcor - 6 + random-float 159 d3 D+ D$ T- j+ U% Y
set ycor ycor - 6 + random-float 155 r5 `8 m) P+ \; E+ P6 b% l
]
* q6 A8 C; ]2 ~: |end
" w5 O3 p, _; V3 n# jto unit_plan , q# @1 }4 ~- Y( M
ask turtles [
( K) H  @$ U1 d- y7 w9 s1 Pif (remainder who 5 = 1) [set a who 2 t  t1 [7 h3 ~. N5 H( |
                          set x ( 0 - Wid / 2 ) 6 Y1 s& y0 P3 ?2 @) ~2 b
                          set y  Dep / 2 ]
1 f# z9 M; `6 L/ J           set b  int (a / 5) * 5
/ R: [: F3 P/ t3 E0 X4 l4 R    setxy ( xcor-of turtle b + x )
' o. K! t' s: j          ( ycor-of turtle b + y )+ a0 g# v! p) h3 |6 N$ Z
if (remainder who 5 = 2) [set c who+ T0 E( A- \/ v9 q  ^1 Q
                          set x ( 0 - Wid / 2 ) $ _+ s# _! t$ X" V" B- W# l
                          set y (0 - Dep / 2 )  ]
7 W1 d& S1 l6 v                          set d int (c / 5) * 5
/ w- D: ~1 [* C+ v   setxy   ( xcor-of turtle d + x )& T9 y0 R$ r7 {# m' i
           (ycor-of turtle d + y )
# _4 Z1 Z9 q- _" B' m, l" R! N          2 M  E  B. u7 E" [  x
            4 P/ o4 [. @0 n0 ?* M6 q/ d6 W; I
if (remainder who 5 = 3) [set k who
; J  M# U, k6 \! e                          set x( Wid / 2)  + k5 B/ N' R/ d' A3 @
                          set y (0 - Dep / 2 ) ]
" V% O4 Y/ J* `2 F& @. s                          set f int (k / 5) * 58 ~9 o9 Q  t% v# j: A3 c
  setxy   ( xcor-of turtle f + x )
  j4 }) [( Y7 ~$ n9 r8 h6 ~           (ycor-of turtle f + y )
2 ^2 Y0 S9 b% d. r           $ i% y2 k/ M% ?! `2 w
           
% U% y, X- g9 P: r+ @1 [; nif (remainder who 5 = 4) [set g who
$ n* M: X6 L( A/ A2 g( M) @                          set x Wid / 2 ; t% W- N( j* q7 O5 B
                          set y  Dep / 2 ]
9 q% Q4 Q2 F. V5 g: J% m; O5 y                          set h  int (g / 5) * 5
+ ^3 _( S/ l6 P$ [  setxy   ( xcor-of turtle h + x )8 g: Y+ `* r, S' w
           (ycor-of turtle h + y ) & _6 b" \& _- }+ O4 O
                          
4 z# |9 }" ^' e                          
0 F9 \6 V6 m+ p, ^3 R3 s8 \                          ]+ ]' e$ y( g9 v& H8 b. |' p& Z
end) A) y( B2 \3 t! b" k% i) @4 G
; _! W' P4 I& Y. p/ S- I
[ 本帖最后由 etamina 于 2008-4-10 16:41 编辑 ]

本帖子中包含更多资源

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

x
 楼主| 发表于 2008-4-11 13:26:12 | 显示全部楼层
已经解决了,
# t" M7 k+ x4 ?& X4 t4 Y应该是
3 F# ]) H# u3 s. x! s; o6 t, o0 Wask turtles [
  z( a- Q! b! w- Y7 kif (remainder who 5 = 1) [set x ( 0 - Wid / 2 ) . F& _5 G9 w5 w) Z9 B( U5 O
                          set y  Dep / 2   Q- Q, r7 e# }% p( Y
           set b  int (who / 5) * 5
# [" s% r- i' ]0 L: U    setxy ( xcor-of turtle b + x )1 n5 n7 V' u5 s  A
          ( ycor-of turtle b + y )]]
( E. R2 o  V; v9 N* _: F0 {end  j+ s9 D" s5 }" i+ F( q
之前有个括号位置不对没发现
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-5-31 15:59 , Processed in 0.013617 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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