设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7360|回复: 1

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

[复制链接]
发表于 2008-4-10 16:36:43 | 显示全部楼层 |阅读模式
我的模型,原意是使得每五个turtle成一个矩形,这些矩形随机散布在一定范围内。
/ Q. n5 v. C3 w7 G' f6 q, Y
; I6 I3 D3 V5 n+ w- L但是运行结果所有的矩形重叠在一起,只显示一个矩形。请大家帮忙看看。, X$ N0 ~5 `* y$ b
0 f# j% y' t7 e
turtles-own [a b c d k f g h' o+ E. f: V  d" N+ g$ W
  x y     ;; these are the leaf-turtle's offsets relative to center-turtle
! s& f; {: l% b8 H$ v; y+ E]
/ ^+ O$ ]) x& F7 W- oto new  {+ L4 W2 U+ K6 _/ |- ^
  ca& x* ^5 b3 T. n) E% I/ q
  crt 5 * num_of_building7 `: ?* s2 m9 t; U
  ask turtles [ifelse (remainder who 5 = 0) [set color red][set color blue]]
4 ]8 |& j: ~# M  scatter     ;;keep center-turtle random positions
% A! ?5 o0 A$ I: p2 w( V* z  unit_plan   ;;make up the building plan
! q" l1 o  D% X  T6 W. U9 M2 w' M; Cend
1 d; Z8 P: L( i4 ^. R9 Jto scatter
) ^5 T+ P3 G, {3 W4 Aask turtles with [remainder who 5 = 0]  Q, K4 {# [+ `2 S- Y" e* v
[" O+ G, x/ {8 A; u' z3 M
set xcor xcor - 6 + random-float 15- U; m1 a* x2 v- `4 i8 B% @
set ycor ycor - 6 + random-float 15
0 S( P6 l" y7 `4 ~2 T]2 t8 r* W( F% |! d/ C0 w
end
  F! d  ]% g5 J# v# l7 g7 Z9 sto unit_plan + v  r" f7 i: l' ^7 J
ask turtles [
( h3 S' T/ G) j% r+ P! k* uif (remainder who 5 = 1) [set a who $ b: H8 [! m8 `+ g! p! d9 P4 W
                          set x ( 0 - Wid / 2 )
: e- ]* p2 U, k3 V  ~* g- N6 J                          set y  Dep / 2 ]; @( g, f) a) Y2 n6 G3 Y
           set b  int (a / 5) * 54 X" t+ V! W- k
    setxy ( xcor-of turtle b + x )
( U; h, ^+ }; `+ f3 }& E3 f4 X+ l          ( ycor-of turtle b + y )* L4 c0 D1 G# _" q! t2 M+ v% m2 Y) D8 k. O
if (remainder who 5 = 2) [set c who) g3 L$ E% T# [) r5 @
                          set x ( 0 - Wid / 2 )
& w3 p8 d& t6 W2 S                          set y (0 - Dep / 2 )  ]- N4 O9 u: C$ k: w2 Z' [
                          set d int (c / 5) * 5
& `& D; J9 Y0 H5 O   setxy   ( xcor-of turtle d + x )
" I5 C  H$ `2 g7 O8 a# R% J2 W" U           (ycor-of turtle d + y )
4 `" c, y" m3 m2 @% ^% M         
5 ~# d4 f9 ^9 x! P/ P. W" e            
$ K" C8 X# M0 y8 ?7 w2 Aif (remainder who 5 = 3) [set k who( d) D7 M; h! M4 Q5 g
                          set x( Wid / 2)  
) T6 n3 h4 k1 O9 E) Y' r                          set y (0 - Dep / 2 ) ]
( p/ n8 @9 T7 R% M; L                          set f int (k / 5) * 5
# G: u7 T. E2 X* E* j  setxy   ( xcor-of turtle f + x )
. h  j/ ?2 }4 h2 |           (ycor-of turtle f + y )
! E/ C2 a% H4 _' f* F8 _1 I           * o6 Z8 D# Q& T3 W; U1 ]; K- F
           
4 `5 {' E$ p4 I# Q8 U/ Yif (remainder who 5 = 4) [set g who
! Z5 J3 [9 b, v1 i# O' k                          set x Wid / 2
( F8 w6 {& }4 g6 _2 w1 f" M* H                          set y  Dep / 2 ]+ u' N- {9 j! X6 t# x/ j" f" L" Q
                          set h  int (g / 5) * 5/ z% Y- _1 i5 H: }6 i
  setxy   ( xcor-of turtle h + x )! ]0 ~& U9 N. F
           (ycor-of turtle h + y )
* ~' q. \# z/ P8 g* w/ T                          
! [6 y: ~$ K- j" `                          7 Q) {/ V* c) r5 ^
                          ]
5 l7 n& G* E& ?* e! Pend
0 V; k" G5 |) }  S: I$ [; r; Z  v7 ?1 h  ?9 c9 f8 {, S
[ 本帖最后由 etamina 于 2008-4-10 16:41 编辑 ]

本帖子中包含更多资源

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

x
 楼主| 发表于 2008-4-11 13:26:12 | 显示全部楼层
已经解决了,
4 e8 |$ }9 ]- r% ~应该是
! L1 p# |; M% J% h0 bask turtles [' r3 X5 |% Q2 q. n8 k% P& X" u, d
if (remainder who 5 = 1) [set x ( 0 - Wid / 2 ) & h; N3 Z3 p6 N2 }1 [" S3 \' c' N
                          set y  Dep / 2
' j7 |4 p9 F. H2 g0 i           set b  int (who / 5) * 5$ ~" q0 O+ [; Z$ c. {' D
    setxy ( xcor-of turtle b + x )
; c) n/ w' z2 S) @0 T          ( ycor-of turtle b + y )]]
8 J+ d; E' k& b5 p3 r7 T0 zend9 n7 F; h/ X3 Z
之前有个括号位置不对没发现
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-2-2 22:52 , Processed in 0.017982 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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