设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 9059|回复: 1

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

[复制链接]
发表于 2008-4-10 16:36:43 | 显示全部楼层 |阅读模式
我的模型,原意是使得每五个turtle成一个矩形,这些矩形随机散布在一定范围内。
& |' N' h; y- t& e5 o) F" \- C, m+ q( k1 M
但是运行结果所有的矩形重叠在一起,只显示一个矩形。请大家帮忙看看。" C% [# ]0 D9 ^: _/ D

7 v5 z% T* I3 v+ N$ e1 @turtles-own [a b c d k f g h5 z, t6 }" k2 m' E  a' X7 O. j
  x y     ;; these are the leaf-turtle's offsets relative to center-turtle - J! {7 V) X' l0 U0 D! c+ I4 h& @
]
1 P+ Q7 S0 r, p  B2 K3 R  s! xto new3 @. h9 A0 c' |& E& C! _- D
  ca
+ L) \) E0 q8 v: }0 O5 g$ E  crt 5 * num_of_building
7 |. i7 S: X% X  ask turtles [ifelse (remainder who 5 = 0) [set color red][set color blue]]
: x$ J7 Z6 s# H) y8 n  scatter     ;;keep center-turtle random positions
5 n: G2 k- P9 ]$ y8 J  unit_plan   ;;make up the building plan
. R2 W) x% ?6 G$ Lend
8 M: }% i8 n, P' U6 C9 s* Mto scatter
0 g( X" W: ^4 y, ^7 i! lask turtles with [remainder who 5 = 0]* ^1 v1 Q: \0 k! i8 F6 g* Y# r0 n
[# Z' d; b- K- S" L. n) h/ P7 x% ~
set xcor xcor - 6 + random-float 15% P/ T+ [( E7 t. o" \" h
set ycor ycor - 6 + random-float 15$ }0 w. y& Z6 z4 B5 w2 L
]9 h0 }& }) {6 v2 M# T
end
6 w! w* q3 w; q( F# Cto unit_plan * J; `3 K. P4 u- p
ask turtles [/ [, Y, q) O# X) @2 Z1 c9 y% p
if (remainder who 5 = 1) [set a who   @5 O8 Z$ `# U- e2 ~( B: L  q# |
                          set x ( 0 - Wid / 2 ) * T9 J' {$ u. {. f/ J
                          set y  Dep / 2 ]+ f! D3 H, }7 v- ]6 s: [/ T
           set b  int (a / 5) * 5
. S- B8 g7 I% S, R% [! ^' d* Y1 z    setxy ( xcor-of turtle b + x )
. Q& k+ B! K( q          ( ycor-of turtle b + y )7 O9 a* T8 y+ D. p6 P; Q
if (remainder who 5 = 2) [set c who$ @: }4 a: \) F# n
                          set x ( 0 - Wid / 2 ) 7 b9 E5 \/ v5 m% O
                          set y (0 - Dep / 2 )  ]& b% Q1 Z* c- Z. h$ j
                          set d int (c / 5) * 5
: U5 p. m7 P" }  |/ G+ G0 q# y   setxy   ( xcor-of turtle d + x )
: m6 l' a' ?! i- {6 W2 G4 W           (ycor-of turtle d + y ) : f9 ]( C/ C! I! o/ B
          4 \' z7 i+ u/ q0 U
            
/ I) m/ w! @3 E5 H: P' G& G% k; Rif (remainder who 5 = 3) [set k who. e* C8 Y4 C8 ]4 Q1 u
                          set x( Wid / 2)  
/ q' B6 _& _, u/ T  d( @                          set y (0 - Dep / 2 ) ]
: M5 u9 [# ^' U                          set f int (k / 5) * 58 N5 O( O3 T7 H0 y0 _/ b
  setxy   ( xcor-of turtle f + x )
% Y6 K7 F# e) V5 L* ^           (ycor-of turtle f + y ) 9 C' B/ B6 A) m. Z1 C* I6 `
           
4 y% _: f5 o  ^, V1 w4 K# y6 F           % M. J% C" b2 E- R
if (remainder who 5 = 4) [set g who. V% I/ o# {$ C" w
                          set x Wid / 2 3 P, ~( B+ k3 V( ?  p$ a
                          set y  Dep / 2 ]
$ B- k' w2 n. X& {' g                          set h  int (g / 5) * 5
# A: G( f  D; A. T: F  setxy   ( xcor-of turtle h + x )
4 B6 S2 U0 [3 \# O! c9 b4 B           (ycor-of turtle h + y )
& o1 j# F( k! U& m/ F                          
( I, h$ P2 M& i( x" M                          
9 q2 [3 C5 E8 h                          ]
5 T, r8 z! [7 G2 gend* Y% s1 Z8 `7 M5 T# |  ~
' M0 F6 E: `( i$ n2 D5 I2 D8 @
[ 本帖最后由 etamina 于 2008-4-10 16:41 编辑 ]

本帖子中包含更多资源

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

x
 楼主| 发表于 2008-4-11 13:26:12 | 显示全部楼层
已经解决了,, \' V5 h  Z* V$ @' w% g
应该是( l" ^6 \4 u2 M, N: r. A/ I- v. ?
ask turtles [
# k2 |0 a! J& N' A# i$ Nif (remainder who 5 = 1) [set x ( 0 - Wid / 2 ) % H7 O) L& }$ p$ K
                          set y  Dep / 2
- U" x) |2 S* j0 O, K3 z           set b  int (who / 5) * 5
. Y, t8 ^! a; W    setxy ( xcor-of turtle b + x )) Z' ]# `- w9 o' c
          ( ycor-of turtle b + y )]]
: Q) q! c; C. R& i1 R) Iend( T+ L6 W3 f0 r. J0 a. N- a
之前有个括号位置不对没发现
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-9-12 18:58 , Processed in 0.016157 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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