设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7917|回复: 1

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

[复制链接]
发表于 2008-4-10 16:36:43 | 显示全部楼层 |阅读模式
我的模型,原意是使得每五个turtle成一个矩形,这些矩形随机散布在一定范围内。
" g/ b% t% p: m3 Q2 l( \, U
. O3 S( H, f( s9 V/ [' Q; J6 i但是运行结果所有的矩形重叠在一起,只显示一个矩形。请大家帮忙看看。% T- m) \8 A; q

( d& n! u: N5 Y" y* wturtles-own [a b c d k f g h
" \% u# p1 D: _" O8 j  x y     ;; these are the leaf-turtle's offsets relative to center-turtle / K+ A3 J0 A$ X, f# T
]
3 y! |. h. T% @4 |to new
$ \9 i: S( u2 t+ Y& y7 d  ca7 I4 \; Q/ j6 f+ u7 C* K5 L! v
  crt 5 * num_of_building
# w* |4 a2 t) E- i# R$ G4 T9 m  ask turtles [ifelse (remainder who 5 = 0) [set color red][set color blue]]8 c0 B. }2 e1 W2 g7 {; w2 z: d3 t
  scatter     ;;keep center-turtle random positions , O4 g+ f( ?! g0 c9 n
  unit_plan   ;;make up the building plan6 R) o' A( P5 n& q. p; C; f! p
end1 t9 O+ P& l. \6 l4 m
to scatter
. g' v3 U  [/ G  c' R# @) n  ?ask turtles with [remainder who 5 = 0]
/ A5 R+ c9 e8 l[- a* F/ [7 W, P9 _( _( o
set xcor xcor - 6 + random-float 158 U: c# P& a, \  k& B* B' O5 s
set ycor ycor - 6 + random-float 15
. K+ ]9 J" p0 @' }+ g$ w]
/ ?$ f( b: n: l8 B: o! D, a( C2 Oend9 Y; W7 J( r' W  k  v( q
to unit_plan
. O$ c9 h; R4 x" v. fask turtles [
6 f" T; b. K& w' A2 Pif (remainder who 5 = 1) [set a who 5 p! T" k8 l' P5 ~$ @+ F
                          set x ( 0 - Wid / 2 ) 6 J5 D4 i2 N" x. |( q/ Z; z
                          set y  Dep / 2 ]
9 v' g( d, I& j3 J. K6 P           set b  int (a / 5) * 5; [/ m! `7 Z+ }
    setxy ( xcor-of turtle b + x ). j0 d% u, E$ R, o
          ( ycor-of turtle b + y )
4 }- R9 ~7 ]5 T, o! S$ j" p6 @if (remainder who 5 = 2) [set c who
9 t; u1 ~0 f' a" w" k                          set x ( 0 - Wid / 2 )
6 z; Y7 Q0 t/ U4 \! @, z                          set y (0 - Dep / 2 )  ]
- Y- ~$ N  I0 M. ~# N& b9 x- k+ c% s                          set d int (c / 5) * 5
8 ]% E7 c- s. x# E   setxy   ( xcor-of turtle d + x )
6 ?, c4 C" G9 N0 t; e* u           (ycor-of turtle d + y )
# h. W3 B# I# S/ R3 V         
# O' B/ a% [0 s  R3 G% f            & N6 i$ f; n6 x  @, D% B( h
if (remainder who 5 = 3) [set k who
( c3 Q( A4 Y: L1 w  V; y' v                          set x( Wid / 2)  
+ a8 V% _; Y5 @5 m                          set y (0 - Dep / 2 ) ]
( j: Z1 F) ]) U  p2 Z4 F4 c                          set f int (k / 5) * 51 }5 d! p$ [0 M. e
  setxy   ( xcor-of turtle f + x )
4 O3 \) W* F6 E3 Q1 y1 k           (ycor-of turtle f + y )
9 Z1 G/ }4 h/ J" i+ e# t0 P) ^+ u6 l           3 _1 c) o+ z; w4 a  \1 _& i
           3 Y% u# u( ^& d" s; s' X
if (remainder who 5 = 4) [set g who; `- d# d4 L4 M) T+ ^  Z( O6 z
                          set x Wid / 2 . n, b' k  w; G$ ~( ^3 A
                          set y  Dep / 2 ]
4 Q) j' B; Q. u% x$ g! m; U                          set h  int (g / 5) * 5
! I) x8 F1 y* @" a: i0 d  setxy   ( xcor-of turtle h + x )
5 a9 C; H6 F5 t; a' F           (ycor-of turtle h + y )
' l) Q# N5 U* }6 {1 y                          ; n" X' o; b3 ~; V6 y
                          
" b8 W2 w4 a6 U( T- ?" b, g                          ]" _4 `4 C3 j- k& X# W
end, K: m+ L& M# [
$ ?% O; z1 H; w- [4 r: }
[ 本帖最后由 etamina 于 2008-4-10 16:41 编辑 ]

本帖子中包含更多资源

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

x
 楼主| 发表于 2008-4-11 13:26:12 | 显示全部楼层
已经解决了,  W6 P( G  r3 N) g8 A$ \( m, a
应该是
' {) g. k' ~$ lask turtles [/ w& v1 W' O% f* c4 }
if (remainder who 5 = 1) [set x ( 0 - Wid / 2 )
$ r' F0 z; j, d. s; I                          set y  Dep / 2
$ N$ f; K; I: V+ Z2 u2 H4 r. g7 t& W           set b  int (who / 5) * 5
" J1 m6 @' h( ?    setxy ( xcor-of turtle b + x )
+ n+ W* [. C: [6 H          ( ycor-of turtle b + y )]]
0 g! c( F6 Z- L/ `# u& u6 Hend+ @# w+ B* I+ I- P+ `" L
之前有个括号位置不对没发现
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-4-17 14:58 , Processed in 0.020030 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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