设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 8219|回复: 1

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

[复制链接]
发表于 2008-4-10 16:36:43 | 显示全部楼层 |阅读模式
我的模型,原意是使得每五个turtle成一个矩形,这些矩形随机散布在一定范围内。- L9 g  u+ d7 X! o
. x, \% `, E8 k) W* H: q% p% V. q
但是运行结果所有的矩形重叠在一起,只显示一个矩形。请大家帮忙看看。
& h: L7 s, T1 C& R7 ]
3 s- @- A7 ^" ^1 I( F$ E, mturtles-own [a b c d k f g h
! p7 |2 _8 [. P+ H3 r  ]* d: @" d% N  x y     ;; these are the leaf-turtle's offsets relative to center-turtle * X4 {; i0 w5 i' m
]
8 S( }3 f) j, L/ Z, qto new- B8 _! [7 d# k0 T$ _
  ca
3 a: ?7 P4 r  u- X. s; @5 t  A- w: q  crt 5 * num_of_building
5 ~7 ~6 Y3 C2 n- j$ U  ask turtles [ifelse (remainder who 5 = 0) [set color red][set color blue]]/ j9 f& s5 t. p+ U
  scatter     ;;keep center-turtle random positions ; ^4 D8 W4 V5 i; F
  unit_plan   ;;make up the building plan% |& a1 S6 l+ r3 }  _% L7 {
end
& v7 B, `9 B. M9 mto scatter; O4 A( e6 u4 m* }: w2 u7 |
ask turtles with [remainder who 5 = 0]
4 d: ]+ f3 W. o( _[. x3 C; p4 I; z4 z, o$ K4 R
set xcor xcor - 6 + random-float 15* Q! T3 L( Y5 i( D
set ycor ycor - 6 + random-float 15
1 l! Z2 A! ^0 t]9 T8 k- M( a: d6 K4 `
end' x' F4 x3 k4 F
to unit_plan 8 l% R3 c( _$ ^. |7 f
ask turtles [3 j' E& v+ q' V. ?
if (remainder who 5 = 1) [set a who
+ ]* @! R2 P/ H/ L                          set x ( 0 - Wid / 2 ) 2 X; V! f4 a( s' L2 @
                          set y  Dep / 2 ]
) X4 J6 v* ^0 h9 p7 y           set b  int (a / 5) * 5* g* m. y9 c, k7 g* P" @
    setxy ( xcor-of turtle b + x )8 s! i4 R5 _+ e* I* l7 G
          ( ycor-of turtle b + y ), @% W5 L1 H1 v! l4 U6 H
if (remainder who 5 = 2) [set c who
. ~1 P! ]) S  ^7 C  I+ R3 P+ g/ H' x4 F                          set x ( 0 - Wid / 2 ) # R) z% g: F0 P
                          set y (0 - Dep / 2 )  ]4 W4 J3 e9 F. I" n9 j! F! q) R
                          set d int (c / 5) * 5
, n% o3 j) o' F7 R( |& O   setxy   ( xcor-of turtle d + x )
! R( w9 G5 H2 v5 F           (ycor-of turtle d + y )
- x$ M+ m, U) V          ' y! _4 S% C% E2 W9 z9 N
            / f! x7 H' g! \
if (remainder who 5 = 3) [set k who4 s- x* f+ ^, J) @! I% a5 z! J9 n
                          set x( Wid / 2)  
- |- x. J' O! v; K; }                          set y (0 - Dep / 2 ) ]5 Y8 \4 J+ ]4 d2 s% Z4 c1 ?. H
                          set f int (k / 5) * 5
4 [' H. B$ Y/ T( M! r  setxy   ( xcor-of turtle f + x )
% {: Q& e4 T. \& v! s  y           (ycor-of turtle f + y ) 1 K* k* s7 N* m, m: ]/ W
           
* K7 s: t. q( o/ b$ D$ U: K5 @) Z- r! e) N           
( n- x9 w6 E& |4 Z6 Z1 p% C8 ?1 ^if (remainder who 5 = 4) [set g who
% ], ~7 y6 X6 n* a/ Z0 D                          set x Wid / 2
! I# a) C& m! d/ S                          set y  Dep / 2 ]7 G$ ?! c# _5 M, `
                          set h  int (g / 5) * 51 G3 L$ @, u! q3 ?8 @
  setxy   ( xcor-of turtle h + x ): R0 |0 ]0 k0 {) n
           (ycor-of turtle h + y )
- h$ W) g1 t# D9 z# U                          ) D* b3 j3 H1 N7 y& U  i
                          * {, D' W6 [. G9 e4 I- V8 \& O6 ?
                          ]
! S5 [* J1 E; l& f" g# y7 Q  send
( N* o. q( b( \
' r" Z$ L8 G  n  ^: ?4 b! z[ 本帖最后由 etamina 于 2008-4-10 16:41 编辑 ]

本帖子中包含更多资源

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

x
 楼主| 发表于 2008-4-11 13:26:12 | 显示全部楼层
已经解决了,
9 x( Z' S! p& R2 {9 h6 h' o应该是* o6 p0 V  b  o, R- Q; r
ask turtles [
; ]  q7 g! O$ mif (remainder who 5 = 1) [set x ( 0 - Wid / 2 ) 1 o  @( x) y# r3 i. D  q
                          set y  Dep / 2 1 A1 q$ s+ a1 T' ^
           set b  int (who / 5) * 59 H3 A. Y  ]$ j
    setxy ( xcor-of turtle b + x )
8 y, q" ]; s( N3 X) c' A, N+ ?% f          ( ycor-of turtle b + y )]]4 |; K% s! d3 H* Q
end0 ^# ]; s9 S- D$ i- {) e8 x
之前有个括号位置不对没发现
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-5-20 11:46 , Processed in 0.016530 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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