设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7441|回复: 1

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

[复制链接]
发表于 2008-4-10 16:36:43 | 显示全部楼层 |阅读模式
我的模型,原意是使得每五个turtle成一个矩形,这些矩形随机散布在一定范围内。2 }: Y/ S; g& o" H

2 r/ |2 i, \0 W" m- k6 P# z但是运行结果所有的矩形重叠在一起,只显示一个矩形。请大家帮忙看看。- u, `& T; k8 s

' Q  l! N5 v. p& [/ N7 w+ Fturtles-own [a b c d k f g h$ B5 h) Z( B6 _
  x y     ;; these are the leaf-turtle's offsets relative to center-turtle % P& b& m2 H/ ^2 ?2 W5 c4 C0 _
]8 x; k6 L& b; b4 Y
to new2 E# V* t4 W5 M5 r
  ca2 o; O# p8 M1 A8 d9 i
  crt 5 * num_of_building
' q% f7 Z8 d7 o4 L) E" F+ ]  ask turtles [ifelse (remainder who 5 = 0) [set color red][set color blue]]: I7 I  [! |* k9 ?( A6 \3 ~. ?6 B  N0 S
  scatter     ;;keep center-turtle random positions
$ c7 _# Y( K' d1 i  unit_plan   ;;make up the building plan" @) ^  l4 C+ ], Z; {; a6 G
end. M+ ]) v9 r; |% R' }) U- R
to scatter& r# h- g4 @. M; m& G
ask turtles with [remainder who 5 = 0]+ w& m) S" Q/ i" h% F* J
[: p. i# K0 p- S, k- |6 u
set xcor xcor - 6 + random-float 15. @4 e: z, N1 L, o7 ]* Z
set ycor ycor - 6 + random-float 15
/ {. i: [/ s& I4 W5 m]
# R( K% ]: Z4 p6 uend
) B6 N" i+ @+ F% w+ D3 _- L; pto unit_plan % ?  d1 ]) i  A5 \0 E
ask turtles [
* J6 d* b$ c2 D- A9 r: E* H1 B0 Nif (remainder who 5 = 1) [set a who ! ?0 z' [; w7 t( X5 k) `
                          set x ( 0 - Wid / 2 )
0 D  s& y# m% b0 X                          set y  Dep / 2 ]" ]+ b& |4 ^* M/ w* k, G+ P
           set b  int (a / 5) * 5
* p- V& N% t; @0 s' d  V    setxy ( xcor-of turtle b + x )
' l9 W3 j0 k4 [4 x" f( z. k          ( ycor-of turtle b + y )
) T3 j7 y+ @( I) Nif (remainder who 5 = 2) [set c who) L$ y  P4 o0 H7 m
                          set x ( 0 - Wid / 2 )
/ c8 x8 V# P2 H$ Q                          set y (0 - Dep / 2 )  ]0 _& _' d2 n5 J+ B9 b" f5 f
                          set d int (c / 5) * 5
4 p/ ^; s! D; P9 p- K5 z+ A   setxy   ( xcor-of turtle d + x ); E0 e) i! L* O# }6 u
           (ycor-of turtle d + y )
! X4 V$ e% e. }' _/ F          ; p$ _0 L: V/ m. r
            
7 _3 w# }0 P" E$ U( ?8 K: jif (remainder who 5 = 3) [set k who
' \7 z* s; o* [% r) Q7 V: O6 P                          set x( Wid / 2)  8 Y  w6 [  ?" j7 b- y
                          set y (0 - Dep / 2 ) ]# n7 f' C% l2 q+ L3 v- T
                          set f int (k / 5) * 5; c2 @1 z) @+ i* {* |* l$ U
  setxy   ( xcor-of turtle f + x ): J- K8 ]1 q- B4 }0 v
           (ycor-of turtle f + y ) ; h& K2 m, x4 N# `
           : j: M3 R4 P+ C$ U$ e2 [
           
/ `4 d) R9 J$ \! `/ ^3 Nif (remainder who 5 = 4) [set g who
- p4 g0 {! a: C6 @* t                          set x Wid / 2
' n8 `  e8 ?7 f! B% t9 x# J                          set y  Dep / 2 ]
' B6 ~, Q8 H# ~; |6 N                          set h  int (g / 5) * 5, G; ?4 d7 d' ^+ r: |/ L
  setxy   ( xcor-of turtle h + x )) j' K7 \* X- G" K
           (ycor-of turtle h + y )
  q/ E/ Y$ P5 F- i: F                          7 Q4 p# L! J$ x: L6 y
                          
  K4 Q4 {0 o, F. ]* _* @                          ]
/ Q. i$ j& D3 F3 C5 s0 |* yend( {9 r# O& X3 l
/ N0 Z& V% _. x" _; ~  i% R* u
[ 本帖最后由 etamina 于 2008-4-10 16:41 编辑 ]

本帖子中包含更多资源

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

x
 楼主| 发表于 2008-4-11 13:26:12 | 显示全部楼层
已经解决了,. A& y: r$ T& v
应该是
4 I4 l4 l6 y8 N. X" A% \- ^$ iask turtles [9 ]1 z6 |) U. ^* Y8 @/ O
if (remainder who 5 = 1) [set x ( 0 - Wid / 2 ) ' m4 [, h, ?; J2 q
                          set y  Dep / 2 ) |7 i$ C* t5 E! [4 _
           set b  int (who / 5) * 52 n! s% \7 T& M) Z  u9 t- B
    setxy ( xcor-of turtle b + x )
8 b. c* ]( }1 |3 }4 H* T# z          ( ycor-of turtle b + y )]]
' M# E4 i. U7 C* Dend0 a0 G+ B8 E: w9 l4 T
之前有个括号位置不对没发现
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-2-11 16:58 , Processed in 0.017084 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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