设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7603|回复: 1

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

[复制链接]
发表于 2008-4-10 16:36:43 | 显示全部楼层 |阅读模式
我的模型,原意是使得每五个turtle成一个矩形,这些矩形随机散布在一定范围内。
! k( Y5 X0 D) C$ Q& M. k
) s9 a3 x2 p) G但是运行结果所有的矩形重叠在一起,只显示一个矩形。请大家帮忙看看。
" X+ D6 ?6 w* ?) \$ F3 k8 `: y
. X7 M% H' T2 T5 Xturtles-own [a b c d k f g h
& Y2 C; s& r! F+ Y$ p  x y     ;; these are the leaf-turtle's offsets relative to center-turtle
1 O. W& v. g% W$ O- R6 H]- a0 k# q5 v$ ?1 H$ H1 n5 L& P0 D
to new2 ~& b1 \' K  h( x7 t
  ca0 R0 E. Q. O  S4 t5 `+ X, J
  crt 5 * num_of_building8 d- N: |- G6 a& [' A+ d
  ask turtles [ifelse (remainder who 5 = 0) [set color red][set color blue]]8 p- D( q+ t$ `/ {2 ?. r+ j
  scatter     ;;keep center-turtle random positions $ X4 ]2 F" Z  R& ]
  unit_plan   ;;make up the building plan- W+ c- Q" y7 y) H
end
1 c& }$ s, @* m6 E1 e$ t6 [# qto scatter" U# ^# r2 G! t
ask turtles with [remainder who 5 = 0]
6 K5 }( c1 z0 c7 J5 G( N[
* l/ \* I- y7 X3 `& Hset xcor xcor - 6 + random-float 15
# B5 t% N$ H1 F6 f7 iset ycor ycor - 6 + random-float 15
) |4 k/ w7 N* @* e! G, b/ r]
, ]" z. `  u  x. D+ x% Qend
, ?: P% J3 S: e& L% C* W7 X8 ]3 [to unit_plan 8 u/ q8 i: L6 i2 V$ D4 A% S
ask turtles [
4 q5 k! H; R/ k. h1 I5 }if (remainder who 5 = 1) [set a who ' d; x8 \3 M( B" s, E
                          set x ( 0 - Wid / 2 )
8 H5 L) H; ~5 E/ ?! ^1 ^5 }' |                          set y  Dep / 2 ]
1 U' w5 s& y/ }           set b  int (a / 5) * 5
( G* {5 L& g: n: j    setxy ( xcor-of turtle b + x )
5 p* u' |2 K9 ^6 n3 i- t          ( ycor-of turtle b + y )2 P+ I  i7 B/ n" q/ y
if (remainder who 5 = 2) [set c who) \, ~( z+ p9 t- d
                          set x ( 0 - Wid / 2 ) + `. k2 c! _+ _; n
                          set y (0 - Dep / 2 )  ], r0 w' S# c# `# }. U, k& k
                          set d int (c / 5) * 5
* [1 l( a& g5 w. {8 H5 u2 w) g" N   setxy   ( xcor-of turtle d + x )9 r& ^0 M5 F) P  I" R( Z+ z
           (ycor-of turtle d + y )
( E  ~% F, C$ X. \1 F  s          ' r) V/ i' y: \- C- ^& }
            
9 `! G- n& U  C: a1 Aif (remainder who 5 = 3) [set k who8 L  A; @3 ~0 o9 M$ @: i
                          set x( Wid / 2)  
# H9 J0 {2 u  S- ]: k                          set y (0 - Dep / 2 ) ]
# T" r) ~1 E% A" a                          set f int (k / 5) * 5
% Q, l' S6 h4 h  setxy   ( xcor-of turtle f + x )
& ^( j# w' [6 y* }. b7 H           (ycor-of turtle f + y ) - r; `; U2 {9 p% Y0 C  S. t! R$ u
           
! g3 H& y! v3 ^, n$ a$ n5 K( L0 U           7 W* x3 R/ @* ?/ Y8 L5 K* ]
if (remainder who 5 = 4) [set g who  b+ o- \5 e0 h
                          set x Wid / 2 % p- I8 A4 X! Q1 z; K+ N
                          set y  Dep / 2 ]- y3 L* \- f, W* V
                          set h  int (g / 5) * 5
5 |: Q) H; v5 K; J3 \  setxy   ( xcor-of turtle h + x )
& B" s+ l- @. T, {% U           (ycor-of turtle h + y ) : z# B* x2 a1 T7 v0 o
                          5 }0 Q* T- D" C( N, |' `. d/ U
                          
: J# l* y# I9 \1 n& ]% _                          ]
1 X" u4 s6 m. k: G! T0 e8 cend/ C1 a  R! g' ?$ \
% s# Q& w* O: G  @% W$ D4 O
[ 本帖最后由 etamina 于 2008-4-10 16:41 编辑 ]

本帖子中包含更多资源

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

x
 楼主| 发表于 2008-4-11 13:26:12 | 显示全部楼层
已经解决了,
: R! `) y+ k) Q- `- Z+ ]) J; ~应该是
7 k) P$ ^, \% q5 n# r' l8 Zask turtles [5 B. Q8 }# T. i+ Q7 b
if (remainder who 5 = 1) [set x ( 0 - Wid / 2 ) * b5 p( C- ]# I# P. }1 d
                          set y  Dep / 2
- s3 ]: I2 Z0 E5 U* H. t) O           set b  int (who / 5) * 5% {( t5 q* ^* B  d3 V  W
    setxy ( xcor-of turtle b + x )2 ]1 J5 H# a) }
          ( ycor-of turtle b + y )]]& Y# H/ V$ i5 X1 v0 J8 g
end
3 `1 L+ N' ^( z/ k. O- [! s; K. j之前有个括号位置不对没发现
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-3-3 20:57 , Processed in 0.018116 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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