设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7355|回复: 1

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

[复制链接]
发表于 2008-4-10 16:36:43 | 显示全部楼层 |阅读模式
我的模型,原意是使得每五个turtle成一个矩形,这些矩形随机散布在一定范围内。
) T# v5 C1 N) K; i' R
! v" d8 R9 ^; z/ b2 b7 @# V3 H+ j但是运行结果所有的矩形重叠在一起,只显示一个矩形。请大家帮忙看看。. ?: O7 P, y/ O* F
  k% v0 X6 G7 }7 N- N- J
turtles-own [a b c d k f g h
* p" d* X& w  ^. w' T5 f! Q  x y     ;; these are the leaf-turtle's offsets relative to center-turtle
( f) L' q, r& E- N1 K" F, G]$ p, ]4 H: l7 f- B$ ~$ l# o, L- q
to new( L5 v: T+ W* L! u/ W8 }
  ca
9 b0 e1 [# J; A2 U2 q6 F/ `5 v  crt 5 * num_of_building) `! c3 r8 z& \8 ?2 q. m: C! P
  ask turtles [ifelse (remainder who 5 = 0) [set color red][set color blue]]1 G- w! s" C: k0 L$ k# X. ^
  scatter     ;;keep center-turtle random positions 7 l1 f8 V: \. ~8 n
  unit_plan   ;;make up the building plan
  y! D. n* f7 Q2 p  W) pend, @0 x4 h5 K" B/ ^- \# ?5 }" r
to scatter$ t8 M" O& a* F8 ^8 K
ask turtles with [remainder who 5 = 0]
$ n( T* F% p2 X1 {$ F3 R[
$ F$ {3 I8 L/ R) h8 m1 I5 `" mset xcor xcor - 6 + random-float 151 v. P4 D6 D# ?6 P4 t; @
set ycor ycor - 6 + random-float 15' o6 u  Q; w1 j5 W( [
]
5 z; q) {/ f+ bend
' v) R" Z3 E3 h' E# Qto unit_plan
. N  }( I8 M! L9 Lask turtles [
$ l  @/ r0 a! o& M2 g2 Sif (remainder who 5 = 1) [set a who - W# b0 d( e% ]8 k2 ^1 {6 z. E
                          set x ( 0 - Wid / 2 )
4 S- ~2 H$ E( J& y                          set y  Dep / 2 ]
( K) F( Y8 I4 Z1 q  \: X           set b  int (a / 5) * 5
6 I( M; E; b% V4 d, Z8 @    setxy ( xcor-of turtle b + x )& v# U! g# `7 ]' s8 ]% r
          ( ycor-of turtle b + y )
, s8 y: h1 N  P% e2 f: w. X/ s  v2 I& Jif (remainder who 5 = 2) [set c who/ F" h: F3 X, D! N4 G) |' ^1 w& A
                          set x ( 0 - Wid / 2 ) - `2 E4 F+ O2 T) Q
                          set y (0 - Dep / 2 )  ]
5 o) t  [' _3 @' P0 j$ L5 S1 R1 [                          set d int (c / 5) * 59 A0 |, S6 k* {( `
   setxy   ( xcor-of turtle d + x )
; M; H9 P1 D1 Y           (ycor-of turtle d + y ) 5 H4 x- |6 m$ w; X' C! d' b" c
         
6 J$ A) G* _- U* n            
0 d9 ^" R) n" A" Bif (remainder who 5 = 3) [set k who% c+ S; \2 _# L  S% S
                          set x( Wid / 2)  
; V+ W( ~+ ?- R) e5 ?) ?! T                          set y (0 - Dep / 2 ) ]
; I/ g, ?- B1 [( v+ h- x8 D                          set f int (k / 5) * 5
$ o& K0 g  ?* `6 F; m1 V  setxy   ( xcor-of turtle f + x )
' n2 _( f) Q: t% A: O           (ycor-of turtle f + y )
) s* g8 E! b/ y           
7 T& t( p) q: {  G4 h6 ^# o8 F           " |  f( L! R7 L( R9 i" A
if (remainder who 5 = 4) [set g who
+ v. P! {5 l9 ?; T" m                          set x Wid / 2 % V* u- s4 t' M% J  K! s, w
                          set y  Dep / 2 ]
& A) E) s( |. e" n6 Q* C( T                          set h  int (g / 5) * 5
0 [7 r' S& e, O  setxy   ( xcor-of turtle h + x )
0 P: m5 l- p; L4 y3 T8 L. `           (ycor-of turtle h + y ) : q8 j) S% C+ Q' H; z
                          $ W. D- O- g1 e1 @9 H# @, @
                          . ~8 K) S; V7 o0 O' m. S
                          ]
& _, `% R+ Y, O( ?" mend
+ G9 T0 A4 E1 z$ n3 \/ H" [
) R" R/ L( C( G& O$ G[ 本帖最后由 etamina 于 2008-4-10 16:41 编辑 ]

本帖子中包含更多资源

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

x
 楼主| 发表于 2008-4-11 13:26:12 | 显示全部楼层
已经解决了,% r4 ~; m* C- S1 [: {
应该是
, G8 W& {  L! A4 J+ cask turtles [
* t' A1 [- [- j! sif (remainder who 5 = 1) [set x ( 0 - Wid / 2 )
" Q! ?% ^! _; t: Y                          set y  Dep / 2
  E8 A9 y; N: w' p% C; l! A( g4 J$ R           set b  int (who / 5) * 5- U. X4 Y* _( B: P1 x
    setxy ( xcor-of turtle b + x )
# {# J5 v' f# o, @/ i0 }2 G" V          ( ycor-of turtle b + y )]]% |. m% r( i* U1 Y# j" f
end& E+ F: v& ^5 ]# [  z* s( n. ~
之前有个括号位置不对没发现
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-2-2 03:55 , Processed in 0.018643 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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