设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7632|回复: 1

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

[复制链接]
发表于 2008-4-10 16:36:43 | 显示全部楼层 |阅读模式
我的模型,原意是使得每五个turtle成一个矩形,这些矩形随机散布在一定范围内。
5 y( h' n# b1 T0 ]2 A/ s1 d' E, F3 G$ [2 L. u- s# ^8 k
但是运行结果所有的矩形重叠在一起,只显示一个矩形。请大家帮忙看看。
8 X. z9 ?* m9 W: g6 v! j
6 R: Q8 N" V" w! \6 k( f$ x6 G' Sturtles-own [a b c d k f g h8 m/ N# [% n% y' d
  x y     ;; these are the leaf-turtle's offsets relative to center-turtle
' r7 C4 a8 d$ o- F( ]6 o# |3 w) ~]
. |( h4 T1 u$ d) g4 nto new) j$ O6 C. `  E% U; }
  ca3 b3 w3 E! y3 h6 |; w
  crt 5 * num_of_building5 ^0 X5 U8 p, X5 ~, P2 u- t( i
  ask turtles [ifelse (remainder who 5 = 0) [set color red][set color blue]]1 ^" d0 J" M# C9 C( i% |
  scatter     ;;keep center-turtle random positions " O! f! w" _! L% D% r' }
  unit_plan   ;;make up the building plan9 m, s6 d7 u" a" {" k$ ^$ ]
end9 u, ~( E+ N1 e8 c4 l. K8 B! C) `* {
to scatter  K, f/ h  X* C; A9 r: u1 i0 k
ask turtles with [remainder who 5 = 0]
2 Y. y2 |- `3 [% q( @( Z[
$ }: q) w$ U. Y+ a4 i/ [set xcor xcor - 6 + random-float 15( U! P- T" f( @
set ycor ycor - 6 + random-float 155 K& `: n/ p, r4 ~
]
( A: Y+ Z8 H$ Hend
+ @9 n7 Q8 Y! p" \0 @: J! \0 Yto unit_plan ; I  J9 ^+ X5 j1 M7 w2 W1 G& T
ask turtles [
' w( }' q( ^4 x: e# Z; d$ `if (remainder who 5 = 1) [set a who
* N8 |( l: C( D6 v                          set x ( 0 - Wid / 2 )
5 ~$ d+ V' M* k4 q  x                          set y  Dep / 2 ]
5 h. K1 |+ d+ ~0 W9 j8 h           set b  int (a / 5) * 5
% p$ I# K5 r/ B5 V# k( i' J    setxy ( xcor-of turtle b + x )' K" h# L+ m) Y
          ( ycor-of turtle b + y )
8 R& ^" g2 w- c  sif (remainder who 5 = 2) [set c who
! y2 V( u" F! y! n# G8 X                          set x ( 0 - Wid / 2 )
' s) u; G5 P: ~. @: G( y, {                          set y (0 - Dep / 2 )  ]' r; [4 o, J) H5 V9 p. b
                          set d int (c / 5) * 5& B  K* i, F9 B! `5 C
   setxy   ( xcor-of turtle d + x )  a- O2 G4 g, o2 v' B7 `
           (ycor-of turtle d + y ) 7 h+ p4 O( b, @/ Q( j+ w- J! h
          4 H3 I" U1 b9 g. H; `( V4 n
            
/ m/ T7 ]# h5 M9 bif (remainder who 5 = 3) [set k who5 q2 J& p" e! J% v/ s9 V" l" I
                          set x( Wid / 2)  
4 n! s9 f5 P6 R( \( ?                          set y (0 - Dep / 2 ) ]$ E" P- `3 ]7 s' @  H) {7 O& x
                          set f int (k / 5) * 5) z( e$ L$ B: x. G2 N# Z
  setxy   ( xcor-of turtle f + x )
3 V  e: V( @) i1 C- |$ B           (ycor-of turtle f + y ) 3 g- z+ u0 ~2 q9 X9 y4 a5 D
           
( P' O6 p. K5 [2 w           - @" \% L- A5 I) l2 B" R# J
if (remainder who 5 = 4) [set g who6 d$ D$ G+ s5 S6 \
                          set x Wid / 2 2 Q1 V- S1 Q1 R% x0 o
                          set y  Dep / 2 ]
  Q) P; u( F4 ~+ _  q; ?                          set h  int (g / 5) * 5
/ E$ a' a* G& g6 m8 \9 s1 B  setxy   ( xcor-of turtle h + x )8 a& J% |' ^1 C. [; r$ w) Z, _. L. G
           (ycor-of turtle h + y ) # n4 S8 z" Q) X. ]* u+ P, b
                          
7 E4 E4 _) W$ E                          
/ h7 o; G# f% d4 Z4 V* i7 F3 O                          ]
1 u( H( x8 [7 n) Q7 e. \. y: Oend+ j9 ^4 G  c* w+ l7 d8 A

, m7 N+ G$ m- u2 Y$ y0 |/ D. `[ 本帖最后由 etamina 于 2008-4-10 16:41 编辑 ]

本帖子中包含更多资源

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

x
 楼主| 发表于 2008-4-11 13:26:12 | 显示全部楼层
已经解决了,
- W7 a+ u# v6 Q" P4 K* C9 \; Z应该是
) I  k0 g; E6 p. A$ qask turtles [
, e$ ~7 W7 A, @" iif (remainder who 5 = 1) [set x ( 0 - Wid / 2 ) $ d, q& u; B' P, M9 }, M5 V
                          set y  Dep / 2 - k* Z  V0 X# o# q
           set b  int (who / 5) * 5
1 m& y3 y- U& h+ w( {1 N* x    setxy ( xcor-of turtle b + x )! x6 F( D! O0 M' b' U! r- B
          ( ycor-of turtle b + y )]]
% p, E: }! L1 O( s# x) ?7 T0 cend
3 |& t' l& E# U# l; l之前有个括号位置不对没发现
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-3-9 10:40 , Processed in 0.018212 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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