设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 6848|回复: 1

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

[复制链接]
发表于 2008-4-10 16:36:43 | 显示全部楼层 |阅读模式
我的模型,原意是使得每五个turtle成一个矩形,这些矩形随机散布在一定范围内。
4 Y; E& O7 v+ q1 s$ ^9 j3 T7 t; s
$ t1 O- }% T. ?' \( i但是运行结果所有的矩形重叠在一起,只显示一个矩形。请大家帮忙看看。
; O6 f- U" @- q7 v! w' p' k8 P( s* l3 a, g2 L& L
turtles-own [a b c d k f g h: Z3 Q) p  v% q# p
  x y     ;; these are the leaf-turtle's offsets relative to center-turtle
( i# H, B! P. d4 L! [9 |/ R7 m]& c5 y9 c4 W5 ?; w
to new. p& ?; W2 b6 I3 ~: @3 t. V( U
  ca  k+ x8 e6 \$ z6 n
  crt 5 * num_of_building( [7 S* D5 l4 w+ w
  ask turtles [ifelse (remainder who 5 = 0) [set color red][set color blue]]
' u% O9 y5 Y9 v" R3 f) w  scatter     ;;keep center-turtle random positions
4 J. g7 H0 ^6 \* b! s2 h  unit_plan   ;;make up the building plan
" c: w8 g" j/ n0 h; M- Gend- {+ n: y; j+ C
to scatter! U0 V, C  @4 I6 C3 w9 I& h1 j
ask turtles with [remainder who 5 = 0]
) E6 z, O9 x* t  L7 k1 m6 a! s[
, ^, i) g7 u' v$ W; Cset xcor xcor - 6 + random-float 15% a2 E; \/ ?' W
set ycor ycor - 6 + random-float 15
/ B! b6 f! C6 t$ }: g]
0 ^+ v7 B3 h. e9 ?% rend
3 Q$ n2 A. @( o% y! ]- Bto unit_plan # [/ W0 X0 {4 C  ?3 F( `
ask turtles [6 k$ J2 _$ j1 t
if (remainder who 5 = 1) [set a who % t1 z1 r1 R" }+ |4 c# x' U
                          set x ( 0 - Wid / 2 ) ' l7 b' c& U. b7 f
                          set y  Dep / 2 ]
" h" O% X* ^& U& u' G' x           set b  int (a / 5) * 5
  F2 |& X9 `( t    setxy ( xcor-of turtle b + x )
7 X) R( c! s! A+ Y* M( }          ( ycor-of turtle b + y )1 P4 u% u" c7 m, \; i$ {. v
if (remainder who 5 = 2) [set c who" E' g. b1 M" B; D8 _
                          set x ( 0 - Wid / 2 ) / X; ^  {" w& E. ~! y0 t7 d
                          set y (0 - Dep / 2 )  ]
$ j! f" X9 E5 X                          set d int (c / 5) * 5
8 w, y; a! a! Y6 ]) G   setxy   ( xcor-of turtle d + x )
! H. ^+ l' x: a# I! |( p: Z* I           (ycor-of turtle d + y )   w1 D" Z/ U* A
         
( D6 T% o% [& ^( q4 u            , ~$ N) O: g  c1 N
if (remainder who 5 = 3) [set k who
- m* D+ V; l& _) a. ^  ^1 C, m                          set x( Wid / 2)  
, t2 {+ H6 B) f% r9 A9 d                          set y (0 - Dep / 2 ) ]
- X) m1 A7 j! L, e2 h$ W                          set f int (k / 5) * 52 Q: F# O, C, U, ^1 f7 g6 I
  setxy   ( xcor-of turtle f + x )
  h  i- ?7 u( |# z6 N( w) e           (ycor-of turtle f + y ) : H) U$ y/ P' Q1 ]6 I- t. S
           
; Y/ I9 i( z5 [* ~           5 c4 y, P+ Y# K5 O3 e
if (remainder who 5 = 4) [set g who# U3 m$ T8 t9 V7 X
                          set x Wid / 2
2 O8 I1 f4 g1 P9 a/ f0 [$ k                          set y  Dep / 2 ]
0 S: A, a( c) @' g% h. N$ L( k                          set h  int (g / 5) * 5
2 P4 g: ?* b, x! ]1 ^9 J  setxy   ( xcor-of turtle h + x )0 J* L( d/ H/ M: b
           (ycor-of turtle h + y ) & J- ?( B0 K; S# I
                          : H5 v1 f6 l" Q4 u3 d1 a
                          
6 H- `1 |8 o, z/ S) m& r1 w4 d# P                          ]
, k; u! P' N( O; _/ @end
  z6 q# z0 H: m) h; Y( p' }: c% G! X! L- Z/ S, i
[ 本帖最后由 etamina 于 2008-4-10 16:41 编辑 ]

本帖子中包含更多资源

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

x
 楼主| 发表于 2008-4-11 13:26:12 | 显示全部楼层
已经解决了,
. v- Z. n2 ~8 z; o应该是7 n" i. J& A- K: f( W2 l8 |: }& A) H
ask turtles [9 `. L- J, j3 r9 M$ T
if (remainder who 5 = 1) [set x ( 0 - Wid / 2 ) 1 p0 r% ~. t0 S
                          set y  Dep / 2 # ~/ j  e- @$ g) j  B6 \9 C" c$ {' Y1 V
           set b  int (who / 5) * 50 F7 A; R; ^' t
    setxy ( xcor-of turtle b + x )
; {5 r5 L* H2 x          ( ycor-of turtle b + y )]]+ C+ _; D! M- m1 S
end# I; h( E/ c: i$ n: `2 ?
之前有个括号位置不对没发现
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-11-29 15:44 , Processed in 0.016524 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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