设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7485|回复: 1

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

[复制链接]
发表于 2008-4-10 16:36:43 | 显示全部楼层 |阅读模式
我的模型,原意是使得每五个turtle成一个矩形,这些矩形随机散布在一定范围内。
5 B  s: c. Z1 \. `1 G* y% D. U2 r9 }: L
但是运行结果所有的矩形重叠在一起,只显示一个矩形。请大家帮忙看看。, t$ `0 S/ H! e5 y* c& U6 T

- O7 Q4 s8 m: Hturtles-own [a b c d k f g h/ X3 [" ]) j3 Z. E' t% d$ U
  x y     ;; these are the leaf-turtle's offsets relative to center-turtle
9 M8 N8 m2 T( @  []  E$ E. I& u. g* o. O6 S0 i4 y
to new7 L, R( q! k- H! Q
  ca& H& T9 T9 U# V( O- v3 C
  crt 5 * num_of_building
3 B$ Z% }8 n1 x, J. R; [4 E6 o  ask turtles [ifelse (remainder who 5 = 0) [set color red][set color blue]]
( d, D+ A6 {) x; v! z( K  scatter     ;;keep center-turtle random positions
. q" y$ A7 r1 a5 l  unit_plan   ;;make up the building plan9 G" r: o  e6 C+ a
end
" Q: P0 N* ]- K* l4 j9 s: c+ ]to scatter
% Q9 V: e# O& Lask turtles with [remainder who 5 = 0]
& A8 v' V) L: ~, w* w0 w) a6 b% w[9 i+ K* O. l2 a9 u" F  M; a
set xcor xcor - 6 + random-float 15
: v6 ]( b% D7 {6 [5 l8 v' U2 rset ycor ycor - 6 + random-float 156 ~& h/ I1 @2 e4 @
]6 g8 m7 {' {% v5 N, }  d2 _2 d6 v
end- k9 Y% n# q, }! N' S5 g- \* U
to unit_plan
4 M) g' x' g0 c; n5 Y4 Rask turtles [
! L2 [  X* b! S) W. Hif (remainder who 5 = 1) [set a who
, G* \. j8 \8 t                          set x ( 0 - Wid / 2 ) 8 y( Q) c& \0 J) P& ~
                          set y  Dep / 2 ]
& g4 Z' B1 T) J# a1 V' e           set b  int (a / 5) * 5
, x8 S! c+ w( E. F, I7 M: M    setxy ( xcor-of turtle b + x )
% G3 B( ~& r5 K5 G0 g% E          ( ycor-of turtle b + y )
+ R3 l( Q0 V6 g& G6 u, p6 gif (remainder who 5 = 2) [set c who
. q" {( B7 y5 K% d, v; ~5 W, Y- _! o                          set x ( 0 - Wid / 2 ) % x: m9 }7 H3 b; x
                          set y (0 - Dep / 2 )  ]
3 l" K0 j4 l$ X9 A; z; L# j                          set d int (c / 5) * 5
1 q% k& ^% o* t   setxy   ( xcor-of turtle d + x )
' Q; U. |7 V6 g           (ycor-of turtle d + y ) 1 U3 u' c$ E/ Q  T" z5 [0 r
         
' b7 N& q2 s1 L) \" r) ^; O3 h1 u; I5 C            
2 X) v( n$ q6 c- ]& nif (remainder who 5 = 3) [set k who
  V3 n4 g, U% Z; V% X% x                          set x( Wid / 2)  
( A6 h0 Z3 s; m: k- T& A                          set y (0 - Dep / 2 ) ]3 s$ R1 I/ I3 o% H9 K
                          set f int (k / 5) * 5! D& J; }& D4 y; L8 h! u, _1 F1 q$ t( A
  setxy   ( xcor-of turtle f + x ). F/ p( [8 b* k9 T2 k; v3 s
           (ycor-of turtle f + y )
5 M; O7 Q, ]: x           
* l( W2 ?# w# @7 j! d" C# }0 ]6 P             ], y$ g+ `2 w7 n7 f* E
if (remainder who 5 = 4) [set g who
3 i# H) E9 x9 j6 D                          set x Wid / 2 # ^. p) G/ q- K
                          set y  Dep / 2 ], ?/ j2 [. k& a
                          set h  int (g / 5) * 5/ F- F  |- z- n1 q' _
  setxy   ( xcor-of turtle h + x )
$ I+ ?& a$ p7 M8 U6 s           (ycor-of turtle h + y ) : V( O6 d* y6 \" T7 g) X
                          
# K& v9 e; F* B                          4 d. ~6 w( T! J: M% K7 ^% k
                          ]. D4 k/ @$ Z5 \
end5 d. d1 H: e, H6 q
0 W! c5 b4 C4 U6 i% R* F
[ 本帖最后由 etamina 于 2008-4-10 16:41 编辑 ]

本帖子中包含更多资源

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

x
 楼主| 发表于 2008-4-11 13:26:12 | 显示全部楼层
已经解决了,' N7 I- c$ b' i. T
应该是1 D/ I# U8 {. X5 b
ask turtles [
8 {' i( {9 x2 P& q" a4 Wif (remainder who 5 = 1) [set x ( 0 - Wid / 2 )
& l+ Y5 m0 j$ J) Z- t                          set y  Dep / 2
1 V8 P! T) g8 R9 X# s% s  e$ h           set b  int (who / 5) * 51 s, h& E9 f% c8 ^9 t
    setxy ( xcor-of turtle b + x )
+ n1 c5 [5 N- O1 w+ i' ?3 A          ( ycor-of turtle b + y )]]
. u) ^$ P: K( g6 m" x! Dend
9 `3 V3 p$ L/ ?% s: x! l之前有个括号位置不对没发现
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-2-16 17:02 , Processed in 0.014593 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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