设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 8522|回复: 1

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

[复制链接]
发表于 2008-4-10 16:36:43 | 显示全部楼层 |阅读模式
我的模型,原意是使得每五个turtle成一个矩形,这些矩形随机散布在一定范围内。2 ]9 f" Q6 C6 F, X6 J9 q
7 K* p' t' d: \2 S  @# Q" i! C
但是运行结果所有的矩形重叠在一起,只显示一个矩形。请大家帮忙看看。, n( i$ b- \& z) J' |7 v2 p. [

+ V7 O9 ~9 G* {7 oturtles-own [a b c d k f g h
1 j2 Z( ?7 y* `% c- r& @  x y     ;; these are the leaf-turtle's offsets relative to center-turtle
, |! s( r. R8 p+ p/ l' U" Q]) C6 I0 o; Z* s8 Y! N
to new
* ^2 Y" a4 c9 e6 T( |: K  ca+ z' k2 @. g2 Y1 g7 Y8 k
  crt 5 * num_of_building
. p- C  j9 p  o8 F  ask turtles [ifelse (remainder who 5 = 0) [set color red][set color blue]]
: ~0 I% b1 `  l0 D$ T, H' `4 a( ^$ `( v  A  scatter     ;;keep center-turtle random positions , c2 F( v1 V. i2 j
  unit_plan   ;;make up the building plan" T* C# e8 C7 s0 d7 f- D! K
end
& p' I- y6 }& f9 W( ~5 T! ?# ito scatter: E: z: A+ v" m4 S) D! w
ask turtles with [remainder who 5 = 0]
. L! c( Q# z( g! e  g6 t) \[; _" d) ?0 O" a) d4 G5 E
set xcor xcor - 6 + random-float 15
9 K& O  j) g1 b/ k! M3 m( Wset ycor ycor - 6 + random-float 157 z  h) ?% E0 f4 s
]
1 M! }+ j% B) ~/ [6 p; G) \- ^end7 y( f( F) `( L9 C: R, X
to unit_plan ( W7 V; F6 z, `; P
ask turtles [
+ ]+ j: I+ I# A2 uif (remainder who 5 = 1) [set a who
# e: z: P! {2 h- k! ?) L                          set x ( 0 - Wid / 2 ) : t$ C4 Z2 j; ~: c" P
                          set y  Dep / 2 ]
# S; {: C4 y& Q1 a  t" F0 V1 Q; j4 b           set b  int (a / 5) * 5: G( a1 L2 I6 y7 a% S  p
    setxy ( xcor-of turtle b + x )
1 [: ?% E) Y1 K/ w4 P+ O          ( ycor-of turtle b + y )
+ K' Z! [! \+ n0 ?' F' o) }if (remainder who 5 = 2) [set c who8 [* C" ~& U# R# M3 j- T9 Z9 j
                          set x ( 0 - Wid / 2 ) " g% V4 m! j0 s" N( O9 k
                          set y (0 - Dep / 2 )  ]4 X$ y1 v$ X1 R( q0 V" k' P
                          set d int (c / 5) * 5
* }4 l  P. y! J& @* p* l! @   setxy   ( xcor-of turtle d + x )
. \7 o" w, O9 Z/ Z: {           (ycor-of turtle d + y )
, |# ]$ H, ?$ l* A8 i$ m, l1 b         
9 L) N8 u" O) k/ v) R! @" w            
9 s! f' L6 ?) {+ F! p' Z; f9 ^if (remainder who 5 = 3) [set k who
% ]5 a' `! r' ^1 z, P, j                          set x( Wid / 2)  ; O4 o' R# `# T- N0 v
                          set y (0 - Dep / 2 ) ]# [& ~: {; {/ m0 @2 D
                          set f int (k / 5) * 5+ r  A, d( Z, ?4 _( k7 C9 M
  setxy   ( xcor-of turtle f + x )% T  a! T" u4 K
           (ycor-of turtle f + y )
& F" g# ^6 |) Z- z( |+ y/ ?# ~1 y           3 q0 ~; u8 Q* J, T
           
$ c  u& i  @5 J3 x, {- R( ?$ iif (remainder who 5 = 4) [set g who
8 U) Y5 e9 n+ E& b, C" x                          set x Wid / 2 4 Z( _% d& j1 a9 c' p
                          set y  Dep / 2 ]
3 F, R) J6 j6 \/ I/ ~$ \                          set h  int (g / 5) * 5" ]3 M& ?8 ~0 ^( V
  setxy   ( xcor-of turtle h + x )' ^- `' Q; A/ z  [/ {  [7 ?% W
           (ycor-of turtle h + y )
$ x) Y' h& H8 l- C$ E; m2 j! m                          
/ z: {- k* E" t+ T                          ( e  z) |" L7 U- x8 `
                          ]1 L& }; O5 c7 Z. ^3 A
end# A1 c  k" E5 V3 L! W/ x( |

) D. ]/ s6 B' {$ b[ 本帖最后由 etamina 于 2008-4-10 16:41 编辑 ]

本帖子中包含更多资源

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

x
 楼主| 发表于 2008-4-11 13:26:12 | 显示全部楼层
已经解决了,
+ {& |( Y4 Z4 I% a应该是
6 V7 n: @( i/ D7 A4 Pask turtles [1 }* I3 h% R0 n9 e) }9 J
if (remainder who 5 = 1) [set x ( 0 - Wid / 2 ) , B7 y& Z" M' A* X3 p. j+ z! j* e
                          set y  Dep / 2 . B) `' U/ k( u" Y% J( P: C( A
           set b  int (who / 5) * 5
4 b/ b" Z8 y# J+ `' n9 P    setxy ( xcor-of turtle b + x )9 }9 M3 z# Q* P* V: J# B3 p
          ( ycor-of turtle b + y )]]
8 w0 X. a$ W5 D) P+ lend# |( C/ s  Z  V  `* @8 Y; O
之前有个括号位置不对没发现
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-7-9 12:31 , Processed in 0.014211 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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