设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 8442|回复: 1

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

[复制链接]
发表于 2008-4-10 16:36:43 | 显示全部楼层 |阅读模式
我的模型,原意是使得每五个turtle成一个矩形,这些矩形随机散布在一定范围内。& x2 M* ^% }' v- j( ^$ b' C5 M5 b  G

; y2 w' t1 Y1 N但是运行结果所有的矩形重叠在一起,只显示一个矩形。请大家帮忙看看。- {$ E# _! T5 L* O7 d+ F

( _% a8 W$ V" C  \- r5 K& _1 X% tturtles-own [a b c d k f g h
9 Y& F8 N, ^& b6 R  x y     ;; these are the leaf-turtle's offsets relative to center-turtle 4 r) ]0 l$ A4 `* H9 P, r& a: l
]# o2 s6 u  o" H7 A
to new- R) s' g( J/ o3 p: ?  Y
  ca1 i% |1 L7 f! V! c
  crt 5 * num_of_building9 x2 R! R4 R$ c6 z, v5 g
  ask turtles [ifelse (remainder who 5 = 0) [set color red][set color blue]]* P( ~+ M, s3 F$ I- [+ e
  scatter     ;;keep center-turtle random positions 3 [% U8 @; _+ `& v" U* C* S) a, z
  unit_plan   ;;make up the building plan# ?6 O% p: K( {& v, V
end
& J, M! r5 e9 Vto scatter  A% H# }7 _9 U  b6 _$ T% E8 L
ask turtles with [remainder who 5 = 0]
, T" w/ r) ]/ V7 R[
5 `0 ]1 ^3 {1 Z+ Bset xcor xcor - 6 + random-float 15! {8 T# `' R3 d
set ycor ycor - 6 + random-float 15
, f% t3 o0 a; {. Q]5 |' G' j- o+ V2 W" ?- t" u
end
2 V, R8 T: s) p3 V! l/ L) Bto unit_plan 3 H- j+ C5 X+ i2 g+ T
ask turtles [4 g% A" b5 ~, t. H& [
if (remainder who 5 = 1) [set a who % q: x/ U, v/ }
                          set x ( 0 - Wid / 2 ) 1 y% F7 A- b. J# t9 T
                          set y  Dep / 2 ]
! d: d9 ?4 v9 {$ K# I& j           set b  int (a / 5) * 5
& m2 I9 n8 R% f6 E    setxy ( xcor-of turtle b + x )% R' t8 l6 o% r/ g, s) \
          ( ycor-of turtle b + y )) J" y  V2 _2 X9 j) f: ]
if (remainder who 5 = 2) [set c who; x" o* ~; `; n
                          set x ( 0 - Wid / 2 ) / Q3 _2 Q/ {& ?( U" ?3 a
                          set y (0 - Dep / 2 )  ]8 k+ z. J4 W8 D8 B+ F6 L+ _
                          set d int (c / 5) * 5
& V/ ?; [5 `4 ?% m$ f   setxy   ( xcor-of turtle d + x )
6 U  J. H7 c$ Z; u& H, c           (ycor-of turtle d + y )
2 @; Q2 X* Z. Q1 T          9 m: _+ ^0 T( o' Q, ~9 m
            6 G5 {# P; ]6 O( }3 I1 A. i
if (remainder who 5 = 3) [set k who
' s% }4 x* ^- f1 W& p9 G' A! ]* }( n                          set x( Wid / 2)  " F  m- M. B/ r- |
                          set y (0 - Dep / 2 ) ]
2 @% p/ Q2 w& Z% |                          set f int (k / 5) * 5
' ~; I' V3 ]9 `  setxy   ( xcor-of turtle f + x )4 W: i9 ~0 X# V! W* ]0 ^% x
           (ycor-of turtle f + y ) 4 y: _; y7 Q3 E& m) E% J
           
$ {3 e* _0 ]4 O0 B+ x9 T           6 ]$ B9 g2 p. d  ~6 `; T2 B" M8 ]
if (remainder who 5 = 4) [set g who2 P% R9 I, I( |; Q
                          set x Wid / 2 & \8 t1 y& Q) m0 |8 l
                          set y  Dep / 2 ]% g0 f( i2 n/ U: t8 f& r$ p2 }$ _
                          set h  int (g / 5) * 5
7 y# b# T1 G$ d" ~- L  setxy   ( xcor-of turtle h + x )
4 g/ @  b# @) @           (ycor-of turtle h + y ) # y1 ?& |1 v. D! h" u3 g* @4 o+ U7 B3 d
                          
0 }8 `* I/ ]" \# e1 D- [                          1 o/ l, f5 X6 ^8 M3 _
                          ]7 }+ H5 i6 H! c& S
end
+ s4 Y; f. B7 ?
8 ~6 k2 G  d6 n[ 本帖最后由 etamina 于 2008-4-10 16:41 编辑 ]

本帖子中包含更多资源

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

x
 楼主| 发表于 2008-4-11 13:26:12 | 显示全部楼层
已经解决了,3 E' A0 M/ ], j5 |
应该是
$ V/ b& G$ y4 a5 I, v# y3 Nask turtles [
& D) |& C5 [. j; h# N4 ^& x& bif (remainder who 5 = 1) [set x ( 0 - Wid / 2 ) % Y8 k* Z7 V+ w3 y5 m- i5 z: B. X
                          set y  Dep / 2 , P/ K. x0 \0 _3 k9 E
           set b  int (who / 5) * 5
; l/ d8 j+ p( o( s    setxy ( xcor-of turtle b + x )
7 D8 y. d8 p8 W/ N8 d! A+ o          ( ycor-of turtle b + y )]]
0 X$ a$ w+ c0 P, q( Jend
, x8 d+ C2 `3 j! B8 U之前有个括号位置不对没发现
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-6-26 20:37 , Processed in 0.014706 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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