设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 8069|回复: 1

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

[复制链接]
发表于 2008-4-10 16:36:43 | 显示全部楼层 |阅读模式
我的模型,原意是使得每五个turtle成一个矩形,这些矩形随机散布在一定范围内。
( m4 p5 t. o7 _1 Q$ k( @5 P" i0 Z& o, \3 o3 T
但是运行结果所有的矩形重叠在一起,只显示一个矩形。请大家帮忙看看。) y% v. m3 E1 F0 ?' _

- t0 `# C/ S; K) b9 i+ ^. Sturtles-own [a b c d k f g h
# s( j2 K3 S1 b- l  x y     ;; these are the leaf-turtle's offsets relative to center-turtle
, J8 W" P8 n1 U$ P]9 S# t2 g% [2 c
to new: p2 p0 g. u/ q5 `2 R/ A& Z
  ca
; Y' X7 G# T5 U+ @9 O6 d  crt 5 * num_of_building& X$ m5 Z/ M$ \2 ]4 n6 i2 H
  ask turtles [ifelse (remainder who 5 = 0) [set color red][set color blue]]
4 }3 d1 X8 V5 k% C5 R- V* M- D  scatter     ;;keep center-turtle random positions
5 g4 I  y( E1 z5 L: Q" S  unit_plan   ;;make up the building plan2 y6 o' j8 a( ~; f; s$ ~# R
end
8 G, y  o8 L0 L7 L; b. a8 A8 eto scatter
# D6 C  q, F. `5 I0 \# Iask turtles with [remainder who 5 = 0]6 [, h$ n& {7 h: V$ G
[
0 B. Y' Y  J# k; `& Hset xcor xcor - 6 + random-float 15
2 ], R/ F6 _' H' k+ q( I' _set ycor ycor - 6 + random-float 15
. Y5 J% y# P, @+ V]7 U* i9 |+ x+ C7 W
end
% S$ b; V. e6 P* pto unit_plan
$ X+ J' p# s# e( l/ eask turtles [7 v* @% D# z& m) N5 @: U  X0 t% A" N+ _
if (remainder who 5 = 1) [set a who 3 ~9 h( w! a9 q/ f2 t
                          set x ( 0 - Wid / 2 )
! x9 [4 ?: P3 p                          set y  Dep / 2 ]
5 t7 T+ Q0 k( ~+ [. z% f( d  W           set b  int (a / 5) * 5
( T4 G5 R$ ]3 a" M! W! U7 p8 f    setxy ( xcor-of turtle b + x )* |! M% e/ K9 N# ]0 F7 U3 o0 ~2 R
          ( ycor-of turtle b + y )
! U* R  s1 c" k$ z; B8 ^if (remainder who 5 = 2) [set c who
$ T  j( ^2 K0 e2 Y+ y                          set x ( 0 - Wid / 2 ) & p9 X/ m/ J% `# W( |& q( d
                          set y (0 - Dep / 2 )  ]  ~) U) |* h8 k  C1 p, K+ w
                          set d int (c / 5) * 53 ]* l* j9 n9 b; M
   setxy   ( xcor-of turtle d + x )8 x/ D3 b2 w2 g, P
           (ycor-of turtle d + y )
* l( @% Z* p1 ^6 ^5 n: t" d         
/ c0 |: }  o; s( e            
% W+ u% _$ I: Q% X" Pif (remainder who 5 = 3) [set k who& F8 \3 \* C0 Y8 q, K
                          set x( Wid / 2)  
, d  F5 ^# M; `+ ~                          set y (0 - Dep / 2 ) ]
+ i5 `* T. a5 v$ w: R& s7 }, g3 y                          set f int (k / 5) * 5  [( [: X, Q+ j, [$ u
  setxy   ( xcor-of turtle f + x )+ l! _/ P3 N0 u9 u6 E; R
           (ycor-of turtle f + y ) 4 L0 J4 I; P6 K$ [4 U# A  i3 `* r4 s/ V
           3 B* e, Z- D3 \+ E+ l7 z
           - x6 z- F& q% z# C: J- }
if (remainder who 5 = 4) [set g who% ]% _# H5 W& L% @, q2 O0 ?' s3 D+ z
                          set x Wid / 2 , \  E9 f0 t8 ?( _+ k2 d/ s
                          set y  Dep / 2 ]! |+ R- p4 D1 e2 q5 ]# o
                          set h  int (g / 5) * 5; ~+ C6 s% Q2 e# J$ p' k3 A" s
  setxy   ( xcor-of turtle h + x )
9 ^9 _5 S) Y/ e3 D3 }! Z           (ycor-of turtle h + y )
5 U- I( N* n, }7 g- D                          
0 [7 n* I$ |; S) Q: {/ x                          & y. Y, S9 o: T3 l( z  `3 ^. t
                          ]
+ ~4 f3 `3 {+ p2 d9 pend
6 I- s7 W' }3 _3 M6 `* Y
) w1 x6 R  I+ r8 C* J9 w[ 本帖最后由 etamina 于 2008-4-10 16:41 编辑 ]

本帖子中包含更多资源

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

x
 楼主| 发表于 2008-4-11 13:26:12 | 显示全部楼层
已经解决了,5 p, o8 U9 w7 D3 J# @' }+ W
应该是
. c6 u' C( E/ g" S$ v2 K& Mask turtles [) u! Y2 Q5 l' \* P" t  Q
if (remainder who 5 = 1) [set x ( 0 - Wid / 2 ) % I- l9 T: q6 O" _) A+ K& d) n
                          set y  Dep / 2 ! T. q, X: [, `- W
           set b  int (who / 5) * 5
+ r% ]) P2 T' Q8 z# @, x    setxy ( xcor-of turtle b + x )
/ {  `6 ^8 U6 }% p2 L" G- g          ( ycor-of turtle b + y )]]
6 G. E& e, {; X. j. Cend" R! @3 b) C, f/ q5 y
之前有个括号位置不对没发现
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-5-3 17:31 , Processed in 0.018496 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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