设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7569|回复: 1

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

[复制链接]
发表于 2008-4-10 16:36:43 | 显示全部楼层 |阅读模式
我的模型,原意是使得每五个turtle成一个矩形,这些矩形随机散布在一定范围内。
* y( ~3 Q- X2 W! b3 q6 L- B% T3 M2 w, F
但是运行结果所有的矩形重叠在一起,只显示一个矩形。请大家帮忙看看。8 o3 k" \* T% R( q4 T/ B& C
9 _5 p, [8 S6 s
turtles-own [a b c d k f g h
% I0 `- e1 Y7 R  A3 d  x y     ;; these are the leaf-turtle's offsets relative to center-turtle & A8 B- D" ~. k  Y
]
0 K! q. I6 [. vto new5 Y" l" u& k( q5 M0 r
  ca. ^* z: ~5 H$ M- o4 ]
  crt 5 * num_of_building
3 f1 d( {7 D( Z. M4 ?# d, H8 ?& G  ask turtles [ifelse (remainder who 5 = 0) [set color red][set color blue]]* P! [1 S) D2 Z, s' h, R
  scatter     ;;keep center-turtle random positions
8 p) v- o) i# _$ w$ u2 h  unit_plan   ;;make up the building plan6 H# r4 q' V* ~' B! o  v' ^
end
+ q! P- v# z$ E- a  Zto scatter
# z6 i6 [) Y$ kask turtles with [remainder who 5 = 0]
% ~3 M" m4 c1 _) d  u% Q. ~[- V) R# B5 q; e) D5 {3 E
set xcor xcor - 6 + random-float 15
# x% V4 I' w! s, I- T! Tset ycor ycor - 6 + random-float 15
3 q" k& L( W. J/ e2 n' e6 M]
, R+ K7 G4 c1 c% Z, T' [# I8 iend* W" g* X* S& `/ Y/ V7 z
to unit_plan
! u" B# e- @$ eask turtles [
) f0 I' o  Y9 M3 D1 N5 hif (remainder who 5 = 1) [set a who 9 z9 u& k% t  Z% b, Y+ T& s4 K
                          set x ( 0 - Wid / 2 ) 4 q: S, C3 Q" B: }) J- o: b
                          set y  Dep / 2 ]* p$ a6 v, G1 r2 a1 k3 e
           set b  int (a / 5) * 5% o8 x: B* v2 a+ L7 u# s) w1 q2 r
    setxy ( xcor-of turtle b + x )
6 O. {2 w5 u1 A          ( ycor-of turtle b + y )
' I9 H3 t$ l3 W+ o. s, _# aif (remainder who 5 = 2) [set c who
# @3 V2 E# R8 p                          set x ( 0 - Wid / 2 )
/ u0 H* Q/ z: d* e$ D# |2 E) M& W                          set y (0 - Dep / 2 )  ]: |2 j7 [5 K/ y
                          set d int (c / 5) * 5
. D# y5 o9 T$ {2 L3 F5 F   setxy   ( xcor-of turtle d + x )2 Q3 ]. ^# V8 E" u
           (ycor-of turtle d + y ) 0 W) Y3 d# o+ {. W* D9 O" x
         
9 d1 X5 x1 n7 I" k            . q2 p- q8 J2 N) Z% }
if (remainder who 5 = 3) [set k who
1 N- n; V( c2 v7 Z7 @) P( x                          set x( Wid / 2)  4 m7 ^& e2 f, M0 W2 A
                          set y (0 - Dep / 2 ) ]
2 ]0 x/ ~* Z. ^3 i/ H- y% r                          set f int (k / 5) * 5
& i( E4 A2 ]: Y6 e  setxy   ( xcor-of turtle f + x )- g: Z3 }5 D7 p( _
           (ycor-of turtle f + y ) 0 c3 ~$ |  X' e5 @6 I1 H
           
( R8 J- @! f* e$ M" V           
. \% g, y( }5 x; a! C6 Tif (remainder who 5 = 4) [set g who
- Y' h) v2 N5 K% f) h) M, Y                          set x Wid / 2
+ @2 m( d5 D, _2 r; I; M6 n7 U$ c                          set y  Dep / 2 ]" x# i8 {* I0 E* P# _( ^
                          set h  int (g / 5) * 52 G# H0 A0 N" B6 [& {' C. i
  setxy   ( xcor-of turtle h + x )
/ @! c$ X7 W/ y8 Q- n& t& I           (ycor-of turtle h + y ) % s: D4 H% H/ M5 Q8 \# \
                          
; N) F+ g3 i$ c! e9 s& K9 `                          
9 l' Q. c; G7 `( F5 ?7 I                          ]
" ]2 d9 o  F7 p2 h% @( k5 R% n+ S. Yend0 w; ~& R& t% P# @2 x1 A  y

0 T' j4 n7 s, `, J: H. M3 q[ 本帖最后由 etamina 于 2008-4-10 16:41 编辑 ]

本帖子中包含更多资源

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

x
 楼主| 发表于 2008-4-11 13:26:12 | 显示全部楼层
已经解决了,
* Q* w' |9 L+ Z9 r6 [7 \应该是
( c( G% T2 E- X. [0 [* Y: oask turtles [
4 d/ B2 K, l  `8 ?3 J+ D+ Jif (remainder who 5 = 1) [set x ( 0 - Wid / 2 ) 7 K) G$ W' G0 p+ x
                          set y  Dep / 2
7 @1 h8 m3 v* g. A  a" p+ J  m$ }           set b  int (who / 5) * 52 t4 y& I( a: Z% W' h
    setxy ( xcor-of turtle b + x )! L/ b  s. n: {. E# K
          ( ycor-of turtle b + y )]]
7 b# y9 Z' }" ]& D: t6 Iend
5 G# \! J2 {$ {9 p. m6 Z. W之前有个括号位置不对没发现
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-2-28 01:23 , Processed in 0.019016 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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