设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7176|回复: 1

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

[复制链接]
发表于 2008-4-10 16:36:43 | 显示全部楼层 |阅读模式
我的模型,原意是使得每五个turtle成一个矩形,这些矩形随机散布在一定范围内。* P- r. T) a, G; _
  d* W5 ^; L8 C* L# H
但是运行结果所有的矩形重叠在一起,只显示一个矩形。请大家帮忙看看。  y, M/ L5 B7 A) E" E" l, ?' U

& t) T, a  C) }' bturtles-own [a b c d k f g h
+ |2 |6 R* ^8 S8 A* a1 D  x y     ;; these are the leaf-turtle's offsets relative to center-turtle 5 D1 T8 l+ `1 |2 b
]- m/ Q# b+ V7 s5 B# ^
to new
3 ?+ D2 X% k& Q) E/ K  ca. s$ A- L9 A' [8 I; J
  crt 5 * num_of_building! [, a- s$ V, a7 [! G; g
  ask turtles [ifelse (remainder who 5 = 0) [set color red][set color blue]], t! U. ~" _- e
  scatter     ;;keep center-turtle random positions 2 n9 N7 `& g/ e
  unit_plan   ;;make up the building plan8 a4 e4 Q, n  R/ {% ?" a
end
9 C% |0 U5 s. p$ _; A8 Z! R* Cto scatter3 `' X8 h: h4 U$ \5 {
ask turtles with [remainder who 5 = 0]& a3 c, Z3 \; i0 E  C
[2 ]9 Y8 L7 r% s, F/ O' h( r) ]
set xcor xcor - 6 + random-float 15- l8 F: b2 i# i
set ycor ycor - 6 + random-float 15/ W0 M9 X4 p0 x/ j4 |$ T% `
]
6 G$ N4 x0 q- U2 R: x& {! \2 d/ Uend
* m* U. C5 f7 s- o* Q3 f: {6 Fto unit_plan
4 L. U" Q7 q) S4 P# U. rask turtles [
% O( F/ J! U' r" @! ~if (remainder who 5 = 1) [set a who . h! L( I5 |$ ]2 F) u( N9 q
                          set x ( 0 - Wid / 2 )
2 ~4 n/ ~, z/ j. E  t5 x                          set y  Dep / 2 ]
7 t# U+ ~  G0 C' Q' z6 Q; ~: F4 K* f- ?           set b  int (a / 5) * 52 h/ o0 T$ Y3 Z7 l0 G
    setxy ( xcor-of turtle b + x ): G. A  D3 ?2 j/ P9 R
          ( ycor-of turtle b + y )
2 G% C5 J- c' E7 F& c* Y) aif (remainder who 5 = 2) [set c who" e: \, w4 `9 C; I8 u! ~# f: i8 R
                          set x ( 0 - Wid / 2 )
4 }% L/ L( c1 i6 s$ z                          set y (0 - Dep / 2 )  ]  b1 @4 Y" ]4 ]+ X
                          set d int (c / 5) * 55 m$ L2 r3 {  H+ D  i$ n7 Y
   setxy   ( xcor-of turtle d + x ); A. o7 p& |( Y: I# p; p
           (ycor-of turtle d + y )
8 K* v. N; j9 L! g& q* m: {4 c          ( q9 p" z$ l# t, P9 i  ?
            
$ C& G" @: Y# Y) w4 ]/ hif (remainder who 5 = 3) [set k who
& ?/ f" S# y% m1 m6 ^                          set x( Wid / 2)  # E  _* y$ J9 {
                          set y (0 - Dep / 2 ) ]6 X9 q8 s0 m" A1 K: a$ {! t
                          set f int (k / 5) * 5
3 ]1 {; V. P/ _9 X& n4 ]  setxy   ( xcor-of turtle f + x )9 @8 Y# j# e9 }8 [' ?
           (ycor-of turtle f + y ) % @# N* n' W8 i: U" A6 j
           / s5 L( \' i6 [3 T' ]) C
           
. j8 U$ @) y. h8 a( D, jif (remainder who 5 = 4) [set g who; N; s, \- U0 `: l+ G. m
                          set x Wid / 2
6 H- R; |% Y+ D7 T                          set y  Dep / 2 ]8 l' K+ r, x4 X& \! {
                          set h  int (g / 5) * 5* H+ U+ @& B+ x
  setxy   ( xcor-of turtle h + x )
3 }# D/ L* ?2 R, \9 _! w) Y: g           (ycor-of turtle h + y )
! }) |1 u* E( a" ~                          
9 J; B9 r  _$ M$ j) F) E- F                          
3 N3 j1 N3 O1 Y; d                          ]
8 H# X% J# O# A% V5 P; [end# A4 l3 u/ o- `3 N
* y0 g% ~+ m: ]6 }$ ~# t1 i. ~  q
[ 本帖最后由 etamina 于 2008-4-10 16:41 编辑 ]

本帖子中包含更多资源

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

x
 楼主| 发表于 2008-4-11 13:26:12 | 显示全部楼层
已经解决了,8 I: G3 R; a% @: @1 `3 J" k6 g
应该是+ r+ ]& X# P! V6 z& Z
ask turtles [
' I$ Z* }: y+ j1 J+ H# Z" y5 E' k0 ^: H+ Dif (remainder who 5 = 1) [set x ( 0 - Wid / 2 ) 6 T; Y! Y# T; @2 s9 T
                          set y  Dep / 2
! J( r5 r+ r" ]" M& j           set b  int (who / 5) * 5
( q" Z! o/ y1 M8 m2 Y  K    setxy ( xcor-of turtle b + x )
; t  k; h/ b- ?. V4 _          ( ycor-of turtle b + y )]]9 ~! p0 A0 t) n" c, ?
end
/ D! O1 r) I1 ?  h( L之前有个括号位置不对没发现
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-1-13 16:59 , Processed in 0.023802 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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