设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7532|回复: 1

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

[复制链接]
发表于 2008-4-10 16:36:43 | 显示全部楼层 |阅读模式
我的模型,原意是使得每五个turtle成一个矩形,这些矩形随机散布在一定范围内。" K: G$ J6 p) l' ]4 J, u
4 y/ d7 I# Y, [0 d4 ^; m/ d
但是运行结果所有的矩形重叠在一起,只显示一个矩形。请大家帮忙看看。& _  |! t! d0 a) ^* w0 L; V
) \5 [& O  X" t& c" d3 j! X2 r
turtles-own [a b c d k f g h/ ^5 s) l# v+ s
  x y     ;; these are the leaf-turtle's offsets relative to center-turtle 3 ^- ?" l5 {' N4 b3 k( O
]8 f/ J1 U+ u+ h' X+ U+ q
to new- L5 b' o( x) h9 W/ Z/ Y/ E6 R
  ca. d* g% t$ d- `0 @
  crt 5 * num_of_building
5 K4 w: t# V/ P. X  Z. ~  ask turtles [ifelse (remainder who 5 = 0) [set color red][set color blue]]+ U& {) M4 g" b# P0 h4 S% Y. k6 n
  scatter     ;;keep center-turtle random positions 9 [' t) u6 T& s  ~& D6 d
  unit_plan   ;;make up the building plan
3 q0 u8 T" o3 c7 g; |" }  U! aend
1 U& m, T- s% [! D7 W' b# ~1 \to scatter
" [' r; Q/ o+ Gask turtles with [remainder who 5 = 0]  Q6 Z  U3 b; f9 m
[
; N# ]7 A4 h4 _6 Q. Z( g  r5 Uset xcor xcor - 6 + random-float 15
. |2 ~4 k7 l. Z% }/ n0 ^set ycor ycor - 6 + random-float 15
1 V% @: T0 v. |# X& K. D; J( n]1 M: U' O6 R6 E* _1 @
end
  p- _* J8 C  ~% W: H* Cto unit_plan
- j; b8 r; S2 \$ Xask turtles [
  w8 i* p, ~- C% uif (remainder who 5 = 1) [set a who 7 B. P: S1 r2 `" B" _" J9 F
                          set x ( 0 - Wid / 2 )
5 V- Q# Q! B- O+ u, d/ o6 b                          set y  Dep / 2 ]
9 D( [7 f, N' ?& L           set b  int (a / 5) * 5
  `# x% S9 ]. A. `    setxy ( xcor-of turtle b + x )
! w  C" G: i1 l, h          ( ycor-of turtle b + y )1 K- z8 _; H* c8 k+ D. B0 P5 I
if (remainder who 5 = 2) [set c who
( k+ @9 \2 M3 }                          set x ( 0 - Wid / 2 )
) h" N2 m2 U+ W# g( N$ ~* g5 V                          set y (0 - Dep / 2 )  ]9 q& w3 Z) K2 h/ x
                          set d int (c / 5) * 5
& b6 Y4 d1 X/ c: e- U   setxy   ( xcor-of turtle d + x )
2 _7 H* R6 d! y! q1 p: ^% C& Q           (ycor-of turtle d + y )
' b) ?% D3 G, |+ ~" `% E/ D          9 h) z- \, t3 R/ S: a3 }: p0 _
            
& y& O/ e1 x5 h1 {8 zif (remainder who 5 = 3) [set k who' a% ~) d6 |  D$ X8 O  k3 |+ A; Y
                          set x( Wid / 2)  1 N& N) u3 N: z: R) d
                          set y (0 - Dep / 2 ) ]0 `1 p+ A0 ^" r. `
                          set f int (k / 5) * 5* N1 k5 k8 X: M' h
  setxy   ( xcor-of turtle f + x ): i; L* Y7 t8 p9 m# p# B2 H9 R
           (ycor-of turtle f + y )
$ m' x3 p" g: `7 w7 o           1 U' [5 i" ^6 v
           7 I. ~$ [# _+ {3 F2 f! u
if (remainder who 5 = 4) [set g who
. e+ U% _) A+ ^) A) M/ U  U                          set x Wid / 2
8 |$ u' w# C, ?0 _4 ?9 i; v4 z- A$ G                          set y  Dep / 2 ]- J# J( V* S- t' s( z
                          set h  int (g / 5) * 5
3 `; Y/ o+ Q4 Q, M; @: S  ~  setxy   ( xcor-of turtle h + x )/ f; f5 r4 X+ ^' h
           (ycor-of turtle h + y ) * d+ b  y; {, e6 Y$ I" ], a
                          ) i; W9 \7 M  q
                          
$ o' E: L! }* Y4 y5 L1 h7 K* H. p                          ]
- @2 I3 V  s0 A- t1 _end
% v9 M$ L& Y/ a7 e
+ L6 w) n2 Y+ J( {# L[ 本帖最后由 etamina 于 2008-4-10 16:41 编辑 ]

本帖子中包含更多资源

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

x
 楼主| 发表于 2008-4-11 13:26:12 | 显示全部楼层
已经解决了,
: s4 `$ e/ }. b6 n; ~& ?应该是
$ ]: @) K; v8 L( @ask turtles [
' l( ]9 K# d: y+ ~5 T3 K/ cif (remainder who 5 = 1) [set x ( 0 - Wid / 2 ) 4 l1 R. q$ [6 P2 X" B5 M% |% M, r
                          set y  Dep / 2 9 j$ I  h7 U/ I- ?4 l. G
           set b  int (who / 5) * 5* W7 [: F. M( S0 C% @
    setxy ( xcor-of turtle b + x )# p1 y' Z+ s+ i5 [; k! R8 o
          ( ycor-of turtle b + y )]]
: p% A7 q+ Y/ ^) @: `" X" Y* Aend3 U% f& i, c: Y+ s; N  x1 _! H# M
之前有个括号位置不对没发现
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-2-22 22:29 , Processed in 0.016684 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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