设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 8696|回复: 1

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

[复制链接]
发表于 2008-4-10 16:36:43 | 显示全部楼层 |阅读模式
我的模型,原意是使得每五个turtle成一个矩形,这些矩形随机散布在一定范围内。8 t5 L% @7 V! [6 G. _" `
* |, V" J( _! z. B
但是运行结果所有的矩形重叠在一起,只显示一个矩形。请大家帮忙看看。
" `# T5 g' x0 |: A4 r# s
3 V8 P3 E0 I4 h: M9 y0 y0 c1 Hturtles-own [a b c d k f g h+ Y9 c9 d; ^# ^- b
  x y     ;; these are the leaf-turtle's offsets relative to center-turtle ( b  c- ]. G' F0 @) s& l! H9 U
]6 x' Z" k; D  x! D$ B
to new% x* K% K# W4 z" x
  ca
  E) d( F( p4 ?$ q  crt 5 * num_of_building
. b7 I, I, h: i' L9 Q  ask turtles [ifelse (remainder who 5 = 0) [set color red][set color blue]]6 ~; F  j' ?1 Z/ R8 ]$ E/ @
  scatter     ;;keep center-turtle random positions . g! C' Q, J8 X
  unit_plan   ;;make up the building plan
# G* r- j" \. O/ e7 a8 e1 qend2 J1 m1 \- J: }" d
to scatter5 t0 T' ?; y( ^: N  w( O. s
ask turtles with [remainder who 5 = 0]
" m/ x9 X3 t. d7 U& O- k[; i0 S1 b' `! R0 U8 r1 K& ?
set xcor xcor - 6 + random-float 15% v4 y7 e! t3 ]- ^! a4 ^
set ycor ycor - 6 + random-float 15
% _. H6 s' _, B]' n: R% b8 B* R) N$ j1 w$ Y6 x
end
( r% L0 \! `2 k, d( v2 L& [, Qto unit_plan
: e& s9 I5 ?* C' V; K- h4 Y- d* Nask turtles [
5 Y$ O" p/ _( V# b4 D6 @if (remainder who 5 = 1) [set a who
6 e" g! ~  E' z5 j$ M3 S                          set x ( 0 - Wid / 2 ) 4 d- ?3 b1 o: G. y8 U
                          set y  Dep / 2 ], {7 j# q, p3 ^$ y* ^  \2 V# q
           set b  int (a / 5) * 5
; c9 G) W. W3 G7 |# ^    setxy ( xcor-of turtle b + x )* D2 @. f7 H% Z8 T
          ( ycor-of turtle b + y )' w  d! ^5 T4 ?( @# k9 F
if (remainder who 5 = 2) [set c who
: s( t* t! e% `! f                          set x ( 0 - Wid / 2 )
; r) C3 k( [6 j4 c7 q) s% |( e                          set y (0 - Dep / 2 )  ], E& i9 v2 `8 N8 X2 t- Z
                          set d int (c / 5) * 5
4 D2 y3 O5 T+ f, v' i$ G   setxy   ( xcor-of turtle d + x )
* Y0 J- A2 l* G5 a  J           (ycor-of turtle d + y )
' d, c7 V0 g! w& G; H1 s/ H         
! x: U. T& Y" ?- J, o            
" d: O+ {" T* \# y7 c3 m8 Kif (remainder who 5 = 3) [set k who
6 z: y& }0 Y8 B4 i& e! ]4 f                          set x( Wid / 2)  
% d. o% M" |) {                          set y (0 - Dep / 2 ) ]. L) B' _2 g  t* p
                          set f int (k / 5) * 5
7 y% ]* G, Z" U5 O$ w  setxy   ( xcor-of turtle f + x )
0 M$ H. C. V7 D% z) h           (ycor-of turtle f + y ) 6 P2 M* u. _! y9 `1 [; Q8 H
           4 C5 `. |' q: T* w! Y& }
           2 i* f% b  E  h# T! [, l
if (remainder who 5 = 4) [set g who
( @( o$ W' t) }' |: D! v* ~9 ]4 Y                          set x Wid / 2
! d4 u( ~3 |( N: S4 T. i1 q                          set y  Dep / 2 ]3 U" o+ s7 N: q. K4 h7 o
                          set h  int (g / 5) * 5
/ @6 `9 S. O5 g8 K+ |, d, g  setxy   ( xcor-of turtle h + x ): n* w/ \3 x' Z8 y' @" |, ?: {
           (ycor-of turtle h + y )
0 v" S  v# `% Z" Q3 l2 J7 q                          2 G9 d' k/ w- a# h! @$ R4 ~+ W
                          
9 o8 X2 h$ z# a                          ]
  s  B6 Z  O4 B9 H! Y& V' S! Oend
$ Z" f. E4 q( L  ^+ U1 S
" Y; [' `9 K! p6 g- u9 S# |[ 本帖最后由 etamina 于 2008-4-10 16:41 编辑 ]

本帖子中包含更多资源

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

x
 楼主| 发表于 2008-4-11 13:26:12 | 显示全部楼层
已经解决了,
9 u' s, M' n& p2 H. c8 o应该是/ _1 \- J2 O+ x3 q. P. y, Z
ask turtles [
; v% a( Y6 m- }: @+ S  iif (remainder who 5 = 1) [set x ( 0 - Wid / 2 )
% G- U+ X( c0 }6 H                          set y  Dep / 2 % d1 J) a8 M% G# H/ [7 G* i( `
           set b  int (who / 5) * 5
* ^; H1 `2 s( M/ y0 u& t1 E    setxy ( xcor-of turtle b + x )  ~! y7 V4 c) \: }. ]1 L
          ( ycor-of turtle b + y )]]
  E1 e3 S7 H9 K: Y8 E# {end
3 a; w% ^. G) I3 r之前有个括号位置不对没发现
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-7-27 01:26 , Processed in 0.018908 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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