设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 8818|回复: 1

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

[复制链接]
发表于 2008-4-10 16:36:43 | 显示全部楼层 |阅读模式
我的模型,原意是使得每五个turtle成一个矩形,这些矩形随机散布在一定范围内。
' K, n7 y* k7 m1 o% P" {2 c( U2 T) P
但是运行结果所有的矩形重叠在一起,只显示一个矩形。请大家帮忙看看。4 E; y% A9 B5 |9 @: x0 p

8 P* D3 y/ m! X# c5 f, {& ]0 Aturtles-own [a b c d k f g h2 Z  H0 ^: Z" W3 n1 t- I
  x y     ;; these are the leaf-turtle's offsets relative to center-turtle
5 |+ T) \5 K* n]
! m/ [/ p' J3 W: u8 X9 kto new" a: j: i; P+ B- i: F
  ca
/ C* @& d$ z+ T9 }% v* ~. M8 A: p( v  crt 5 * num_of_building
4 `5 C; a* g: x! t( V2 K  ask turtles [ifelse (remainder who 5 = 0) [set color red][set color blue]]- D6 V7 z0 N3 J0 \2 u
  scatter     ;;keep center-turtle random positions 5 @0 Z" G& t6 @2 U  X" d
  unit_plan   ;;make up the building plan
  f$ q6 m" B9 f! y! f8 Lend
' ^& s' R- E3 r& m3 [: Ito scatter! o; v6 Z! ?4 G* p1 R9 u$ H; y
ask turtles with [remainder who 5 = 0]
" m. v% [" J5 X# n( o) A[
9 b) s, u6 \; O. f( lset xcor xcor - 6 + random-float 15
; j4 |  K5 L) v  n9 F. @1 Aset ycor ycor - 6 + random-float 15  M9 v0 V) i" l4 }
]4 |# O( P( y, ?( g/ Z' c& B( ~8 O
end
" F# \- w" f0 N' P5 Gto unit_plan
9 }. x: z0 F/ [5 l) ~ask turtles [
( w8 ^, m1 J. G8 W. Z2 Z1 S4 ?5 E, Gif (remainder who 5 = 1) [set a who ' Q4 V1 V# A3 d! R; z
                          set x ( 0 - Wid / 2 )
! w! K) }' V: y+ h' T4 V                          set y  Dep / 2 ]
8 [( D2 r; k" N# u) G- Z; b2 C           set b  int (a / 5) * 5
+ x. |/ l1 `1 D% G: B8 t3 A5 [! S' M    setxy ( xcor-of turtle b + x )4 A5 m5 P; a* n* b
          ( ycor-of turtle b + y )& @5 |4 J. k: T$ Y% u' g2 }
if (remainder who 5 = 2) [set c who6 R3 u* m  b6 t* R
                          set x ( 0 - Wid / 2 )
& j9 Z0 X+ `: ]. l$ R                          set y (0 - Dep / 2 )  ]
& \; }% R4 p+ F. E1 ~: f5 \                          set d int (c / 5) * 5+ W1 K- s5 @7 @! M/ I* h: y) L) m
   setxy   ( xcor-of turtle d + x )! s) r3 L2 x6 Q* I0 b/ d8 H
           (ycor-of turtle d + y )
# S: w3 J- K! n! z4 {3 v          . M# p" g9 J& ?2 Z
            ; n/ R: i" T7 G
if (remainder who 5 = 3) [set k who- k: J: |( X7 g  p" a* A; S
                          set x( Wid / 2)  
# X6 A% U) Q% V* x7 s" Q                          set y (0 - Dep / 2 ) ]
$ J/ Q+ F/ S5 c0 I$ S                          set f int (k / 5) * 5
0 m% ^5 h3 m4 O! u% H  setxy   ( xcor-of turtle f + x )
+ K2 x3 _! g* E0 j4 a% v+ V0 t% Y           (ycor-of turtle f + y )
  Z7 ~5 u% y8 F. j$ a+ C; w4 k           * w5 W3 u+ G6 J: @  E2 y4 Y7 \
           
& y! N6 Q0 @0 sif (remainder who 5 = 4) [set g who+ \* k1 H, D1 |4 R0 s/ w
                          set x Wid / 2
& O9 [* A6 @  R                          set y  Dep / 2 ]
% Z! t3 J1 t) l) Q1 A1 Q' N- ]+ p                          set h  int (g / 5) * 55 K' n, i, M9 {, u
  setxy   ( xcor-of turtle h + x )9 ^1 O# ^" `* c/ Z! O
           (ycor-of turtle h + y ) 1 w+ j. r8 z2 z6 m" x
                          1 T2 o% [" T% @) K. V( h$ v$ c- H
                          % z0 C" M( ]4 q* i8 {
                          ]
- l' h. M, Z) y9 D, f- a6 ]end
  D* G2 g& Y4 \. J( V' `- p1 Z6 U$ }
[ 本帖最后由 etamina 于 2008-4-10 16:41 编辑 ]

本帖子中包含更多资源

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

x
 楼主| 发表于 2008-4-11 13:26:12 | 显示全部楼层
已经解决了,* e: ^5 [; s( V' z. D! h- W! m1 I
应该是
& [% d, Z( W- f0 o( J# cask turtles [
# p  H  b- e/ c3 @( P' l) tif (remainder who 5 = 1) [set x ( 0 - Wid / 2 ) + C3 Y/ }0 N  f+ i
                          set y  Dep / 2 : A- k; j% }7 f+ b, j4 K& @
           set b  int (who / 5) * 5
+ X3 ^* G( x2 e% t  i  J% I9 T    setxy ( xcor-of turtle b + x )8 ?9 V! g7 s- O$ y! l/ E7 Z
          ( ycor-of turtle b + y )]]3 y  b: i- c, l/ l
end" D+ u" c! @9 M; [1 h
之前有个括号位置不对没发现
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-8-7 12:41 , Processed in 0.015886 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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