设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 8388|回复: 1

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

[复制链接]
发表于 2008-4-10 16:36:43 | 显示全部楼层 |阅读模式
我的模型,原意是使得每五个turtle成一个矩形,这些矩形随机散布在一定范围内。
: S) G/ T$ }! H
2 F% T0 Q3 t+ W* @( K4 d" E但是运行结果所有的矩形重叠在一起,只显示一个矩形。请大家帮忙看看。
. A" W. A) }% f) |2 O' M2 N+ z( q
$ a, o1 U8 w* s7 Z" H/ Lturtles-own [a b c d k f g h
2 q$ F4 ]9 \9 d0 Y  x y     ;; these are the leaf-turtle's offsets relative to center-turtle 4 r0 ]4 w0 t6 Y; M. I# }; _7 ?2 Y
], j- q4 ~5 p2 `* j& v$ _3 @& u
to new$ s  x! f5 D1 p# I9 _/ x) n# |7 o
  ca
8 b" I9 U# F( X! ]1 j1 t  crt 5 * num_of_building0 ^2 a9 e# k2 N5 F3 d& `8 a6 J" J
  ask turtles [ifelse (remainder who 5 = 0) [set color red][set color blue]]
* h* k) C/ e1 a' h+ F$ w! c  scatter     ;;keep center-turtle random positions ) B7 ~. r8 \! |( c. y& J
  unit_plan   ;;make up the building plan
/ i! [  o! z3 t% a% L$ Eend
# @6 q0 ^2 K2 Q6 nto scatter3 Y9 H* G) f# U5 m
ask turtles with [remainder who 5 = 0]4 T  M6 L& i( Y  s1 C( m% }" [
[" L. {3 D- i/ l1 p
set xcor xcor - 6 + random-float 15
% J; D" e  W! z# X- ^0 Eset ycor ycor - 6 + random-float 159 O  \& ^: P7 ^) Y# n" H1 e5 a* c
], S% _* \/ Q2 b6 t
end
, K, A! Z% K3 `  `# B- `5 U5 Ato unit_plan
2 A1 K& C. @2 b' k$ A0 R+ t- Aask turtles [; p, r' g8 a) ]* W( L
if (remainder who 5 = 1) [set a who
: f6 b6 n. `# e( `( A6 \! P                          set x ( 0 - Wid / 2 ) + n) q# s- A& I; }6 f5 Y. k4 A# F
                          set y  Dep / 2 ]# `( b2 r1 F2 Z  |+ b: ]
           set b  int (a / 5) * 5
& T2 D" c; F( q, d2 l* R    setxy ( xcor-of turtle b + x )! T" |( A* n# }- I  ~
          ( ycor-of turtle b + y )4 l; t' F  |  x1 v
if (remainder who 5 = 2) [set c who% g. ]) s3 U! P7 V1 i3 n/ |
                          set x ( 0 - Wid / 2 ) ; `8 B9 ^/ X# V: p' D
                          set y (0 - Dep / 2 )  ]% ^' f+ z7 F3 u% R- j1 w! n* v& u
                          set d int (c / 5) * 55 A' I: \3 [$ D. r3 v( ]
   setxy   ( xcor-of turtle d + x )/ x0 u# G: Q1 y1 Z' ?% c% z+ U3 N
           (ycor-of turtle d + y )
  E$ t2 Y. o2 j            H7 ^; t& F2 D" ?
            
4 R% Y; S- ?: nif (remainder who 5 = 3) [set k who1 w5 W' o$ H3 J  S! V6 U2 {
                          set x( Wid / 2)  
' f# Z% F# I/ l% \6 S  S                          set y (0 - Dep / 2 ) ]
0 r( A9 N8 w/ s$ \1 V                          set f int (k / 5) * 5% E! V$ A: t0 K% Q4 _% G
  setxy   ( xcor-of turtle f + x )
- S. q5 F& g5 [# _           (ycor-of turtle f + y ) % ]6 x8 Y7 x& r
           
3 o& H0 T% P" q           
* i7 }  W0 l: z+ |8 l7 B( W7 {! sif (remainder who 5 = 4) [set g who/ A1 W5 |& p3 N1 h4 p  C5 H
                          set x Wid / 2
+ e" q1 d: q% U% ~8 v                          set y  Dep / 2 ]
& U  }. T2 w0 v4 i& Z6 _                          set h  int (g / 5) * 5
' v6 M% s, B6 c: s  \& b0 f  setxy   ( xcor-of turtle h + x )
2 t: q. E% c' R, o: f1 V2 [1 l           (ycor-of turtle h + y )
" i: |, k9 ]. a, O8 n+ v5 V( i                          
2 x; T6 y, v& ^  L! o% T) _6 L                          0 w" y- _# L2 r* P
                          ]
! f! d# m+ @3 m- ]- o- Pend8 r: {+ S, L$ W4 t( W4 G0 B
; \$ t! X1 y/ Y  X3 @
[ 本帖最后由 etamina 于 2008-4-10 16:41 编辑 ]

本帖子中包含更多资源

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

x
 楼主| 发表于 2008-4-11 13:26:12 | 显示全部楼层
已经解决了,- G, W6 W8 i& t* H, Q7 N; O# ]0 I
应该是
$ N- m( G. i, J1 E' V2 mask turtles [6 }9 W8 G* g4 ]" S  k) c9 ~% H
if (remainder who 5 = 1) [set x ( 0 - Wid / 2 )
9 D+ x4 I5 F/ q% M) L( U                          set y  Dep / 2 + C7 v  ]/ g9 w6 n( k9 P/ D$ d
           set b  int (who / 5) * 5
3 q5 q) `" E3 w    setxy ( xcor-of turtle b + x )3 h* ^8 {7 Q1 p0 }0 Y
          ( ycor-of turtle b + y )]]" ?, k# X% D% v0 \4 S! v& `
end! c, F$ P5 S; E- S% K4 C5 E
之前有个括号位置不对没发现
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-6-17 17:29 , Processed in 0.013536 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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