设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 6992|回复: 1

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

[复制链接]
发表于 2008-4-10 16:36:43 | 显示全部楼层 |阅读模式
我的模型,原意是使得每五个turtle成一个矩形,这些矩形随机散布在一定范围内。! ~% g6 C3 T; y( F9 d8 q8 Y2 J; C

  T$ I' B6 b. I9 r; ]2 r但是运行结果所有的矩形重叠在一起,只显示一个矩形。请大家帮忙看看。# Q, E9 s. N" |/ b/ Z% o4 M7 x; \; T. N

) W' ?7 f# f* Gturtles-own [a b c d k f g h: d, f, ^, `5 e7 Y/ c% U( ?9 `
  x y     ;; these are the leaf-turtle's offsets relative to center-turtle
9 k/ \2 T" k6 J! s8 D]
' d4 ^7 _; S% v- H' z: mto new0 r5 V. r# ]$ U& W) B. y( \' ^$ ~
  ca$ w' _  ]( U. L& [$ W3 M/ T/ R
  crt 5 * num_of_building
+ b$ O# x/ X' P0 R  U0 Q% N7 `4 ^  ask turtles [ifelse (remainder who 5 = 0) [set color red][set color blue]]0 s4 f# R  j/ }* I
  scatter     ;;keep center-turtle random positions ' U- U1 F6 f7 e0 e! I4 r5 Q1 a2 n
  unit_plan   ;;make up the building plan
3 ]8 y2 o# r- H4 v* Pend; M$ `5 O- w: R
to scatter
" g% m( ~) X8 F4 o& i: K% Cask turtles with [remainder who 5 = 0]" Q: k+ x7 L+ S, Y! M4 x; H% V
[
, x8 q! j; }' E7 A0 L9 X* pset xcor xcor - 6 + random-float 15
8 ^7 h, _1 \7 x# F$ k( r! J5 d) `- qset ycor ycor - 6 + random-float 15
+ o+ t+ x0 d% ^0 _& t]! ]+ ?+ L7 ~' ?
end1 |% J1 ~9 M6 o; o
to unit_plan ) C/ K) c  J& N6 v# r6 _
ask turtles [7 I- q) o' @  U: j* u# N: `* m
if (remainder who 5 = 1) [set a who 8 _. q* C; [$ w3 l7 o1 T
                          set x ( 0 - Wid / 2 )
7 G$ e$ w- c) R% ^$ j/ B5 x  ]3 o                          set y  Dep / 2 ]' z! C( p5 x9 ]! Q6 t$ }5 W
           set b  int (a / 5) * 53 C3 k2 m$ _6 F
    setxy ( xcor-of turtle b + x )
0 C8 b  q* P) F4 u" p' B          ( ycor-of turtle b + y )% |$ h7 K# a; C) B) S* A$ ?: \
if (remainder who 5 = 2) [set c who3 t2 u) x. j# r/ w8 p) X6 j
                          set x ( 0 - Wid / 2 )
8 B: a7 k. A2 j* |                          set y (0 - Dep / 2 )  ]
8 I" i9 A& r% |9 u0 `. \                          set d int (c / 5) * 5
& O: w! e/ ~. E( A4 w   setxy   ( xcor-of turtle d + x )6 D' w) B8 c# L) p( }% N
           (ycor-of turtle d + y ) ; U8 @- M1 b7 A3 G; L
          % V/ H# A* C# h' q6 y- f5 [
            3 C2 Z8 H" Y3 t+ J6 }! J" M& Q
if (remainder who 5 = 3) [set k who
* K+ e# q$ N$ \& z0 Z9 `9 x" |: ^                          set x( Wid / 2)  
3 J/ Z. {$ {* b5 f, u# s8 z8 o                          set y (0 - Dep / 2 ) ]. ]( O! I1 V* k6 I
                          set f int (k / 5) * 5" w; i+ e! @: @
  setxy   ( xcor-of turtle f + x )2 }, i. Q/ x/ R. K' p
           (ycor-of turtle f + y ) $ L( f7 g+ u) o
           0 |+ {: k# O9 C: v' D3 N
           # O& F: R( B4 Y0 d
if (remainder who 5 = 4) [set g who
5 G( |" v$ c  z+ {5 [, I* [                          set x Wid / 2 ( u' a, H# }5 \
                          set y  Dep / 2 ]
1 p8 P& H& i; \2 M                          set h  int (g / 5) * 5
6 \" t  o* c+ a  y7 W1 S9 U7 ?  setxy   ( xcor-of turtle h + x )
3 s7 Y, F" }; t/ F' I% F           (ycor-of turtle h + y )
1 {* ?; \8 d: t3 o                          3 w$ b: z5 O; U+ w! A; J; l
                          2 z- e, z2 Y9 d4 ?) `
                          ]; r/ {' P2 X+ P# I- H4 W/ I* h3 w
end
8 }5 _, |3 V; e7 O, ^- S0 K' \- e
[ 本帖最后由 etamina 于 2008-4-10 16:41 编辑 ]

本帖子中包含更多资源

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

x
 楼主| 发表于 2008-4-11 13:26:12 | 显示全部楼层
已经解决了,
1 m6 i2 r. C8 ^  s$ S, e应该是
  b0 n# L: [! `6 a8 P7 K+ F( ~& O8 mask turtles [6 s' `9 _2 P: q- |4 O' a& N
if (remainder who 5 = 1) [set x ( 0 - Wid / 2 ) 7 G; m6 u; q, X" D( [7 _2 K
                          set y  Dep / 2
: C8 D0 w$ v& C: |           set b  int (who / 5) * 5, I$ Q5 g/ l+ i# Z- f
    setxy ( xcor-of turtle b + x )4 i/ S9 Z9 z' K# q* f" q! h2 h+ p
          ( ycor-of turtle b + y )]]
3 i" b( f6 k, |4 z9 y) B* \end
& r5 {: s' A$ C8 D8 f* b% Q; J! I之前有个括号位置不对没发现
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-12-15 14:29 , Processed in 0.015144 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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