设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7612|回复: 1

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

[复制链接]
发表于 2008-4-10 16:36:43 | 显示全部楼层 |阅读模式
我的模型,原意是使得每五个turtle成一个矩形,这些矩形随机散布在一定范围内。
. A- e3 N3 O4 ]- k; \) q6 x) N  j- Q, _# p
但是运行结果所有的矩形重叠在一起,只显示一个矩形。请大家帮忙看看。
7 ]8 d+ T2 R( X
" d$ W, s8 R. ^% x( X) q- Pturtles-own [a b c d k f g h
+ Z% [  C' o% s$ ^9 [1 u7 T  x y     ;; these are the leaf-turtle's offsets relative to center-turtle
( u1 ]; k; H" b+ |+ r]9 }+ K$ o+ }! I! v% k
to new  x0 D5 Q$ L6 @6 q
  ca
6 b, Q& D, [- @, c  crt 5 * num_of_building2 h$ B( Y2 `" }4 C: t& B. A1 w
  ask turtles [ifelse (remainder who 5 = 0) [set color red][set color blue]]% q8 c$ g! G; r
  scatter     ;;keep center-turtle random positions
9 `% ?1 n0 ~$ ~- j* D  unit_plan   ;;make up the building plan9 t( {, B! v% @) ^* R7 `
end
; u, a0 E" T! d8 o  j. Cto scatter
! R& p) s; O; {6 v: C9 hask turtles with [remainder who 5 = 0]
; w9 p) l, l& x[
5 t: T" E0 s& w) d9 E& N5 Xset xcor xcor - 6 + random-float 15
. J8 k% w3 Q* s8 aset ycor ycor - 6 + random-float 15
$ B- A" J( X5 g]3 m4 Q0 U( X( M: T" q3 e/ b
end
8 K5 w" X; H7 ^! l! ~2 `  _0 ato unit_plan
; E; t, |$ P" ]# [0 p4 E. Lask turtles [
" T6 X; U* @8 V& kif (remainder who 5 = 1) [set a who
% d* J, m- _7 O& T7 U6 G                          set x ( 0 - Wid / 2 )
1 c* N* v- X& S  q2 Z7 m+ K, G                          set y  Dep / 2 ]
7 s) N! E7 }1 g* N  O           set b  int (a / 5) * 5. v' B9 i% @  J& _2 l0 b/ e
    setxy ( xcor-of turtle b + x )* I8 {- W% p) w% V  _) ?
          ( ycor-of turtle b + y )& D! M0 Z/ E( J' {
if (remainder who 5 = 2) [set c who
# ?& p" A3 [% F/ I! r; T* p# O$ ], r" b                          set x ( 0 - Wid / 2 ) $ u+ I7 L( h$ s
                          set y (0 - Dep / 2 )  ]8 a9 e3 F+ H9 h! p9 W- }) ]" |+ l
                          set d int (c / 5) * 5
. L4 M5 y1 K4 M4 z- N3 v   setxy   ( xcor-of turtle d + x )2 _0 b; H0 m* Z$ X9 G
           (ycor-of turtle d + y ) 5 g, a% f6 k& @' _9 k) s
          $ @, c; i9 x! r2 t; o/ w
            8 Z; z1 o; e: i
if (remainder who 5 = 3) [set k who& E4 O7 M' J# Y9 a3 j1 _
                          set x( Wid / 2)  5 Z) \7 J$ u6 D/ O' \  d
                          set y (0 - Dep / 2 ) ]+ M$ s7 g2 O% H% T
                          set f int (k / 5) * 52 ^4 p( o, c1 ]
  setxy   ( xcor-of turtle f + x )
" t4 z. @/ a2 c0 e, n. o           (ycor-of turtle f + y )
5 w3 Z6 [" t( w3 D5 {8 m           
$ V7 I* i! y- S           0 y3 D& C! P5 ~* f
if (remainder who 5 = 4) [set g who" F7 Y5 P9 ~2 u$ ?- P
                          set x Wid / 2 7 D1 T8 U7 G, A" p
                          set y  Dep / 2 ]
: O; y3 {  n6 Z                          set h  int (g / 5) * 5, W( m9 M4 _! Z% o! l0 A( @$ S3 x
  setxy   ( xcor-of turtle h + x )
3 {) y& }, y+ T9 s7 y7 f0 n+ d           (ycor-of turtle h + y )
1 T' q6 w# a2 U* v% V                          
3 z0 n! l# M" z. C% F7 Z1 K                          
& \- }# B0 F$ k1 v4 Y+ M- x' y                          ]* ?. f+ _/ h4 u
end" h2 B; S4 v0 ^, G2 x" Z
3 i6 \, s, l( N9 _7 l
[ 本帖最后由 etamina 于 2008-4-10 16:41 编辑 ]

本帖子中包含更多资源

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

x
 楼主| 发表于 2008-4-11 13:26:12 | 显示全部楼层
已经解决了,! R3 O  F9 o1 O7 a7 N* Q4 H
应该是
8 R! a( G" [, f1 d7 v6 b4 T" A+ A5 Oask turtles [
! c2 z8 v! f$ u/ L) Aif (remainder who 5 = 1) [set x ( 0 - Wid / 2 )
- f# C! R4 M  o8 K' t' W                          set y  Dep / 2 - n+ r5 A0 y/ {  Q
           set b  int (who / 5) * 5
& ^& w( F- J9 ?+ w+ u    setxy ( xcor-of turtle b + x )
8 T8 N% O+ W2 V/ c          ( ycor-of turtle b + y )]]
) p6 s9 k9 w9 W) v  ~- Vend& K. U3 z; C$ R. c
之前有个括号位置不对没发现
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-3-5 09:10 , Processed in 0.022465 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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