设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 8216|回复: 1

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

[复制链接]
发表于 2008-4-10 16:36:43 | 显示全部楼层 |阅读模式
我的模型,原意是使得每五个turtle成一个矩形,这些矩形随机散布在一定范围内。8 E+ `/ F6 z) \: ^$ A
7 k7 R/ ], z& r3 D0 E
但是运行结果所有的矩形重叠在一起,只显示一个矩形。请大家帮忙看看。
7 ~4 E1 Y3 Z6 Y* m% R
/ R  S: @9 V7 i7 aturtles-own [a b c d k f g h
6 U3 g2 I" L; Q6 D  x y     ;; these are the leaf-turtle's offsets relative to center-turtle
( T& f& s4 j, {& p+ {- L$ W+ l]
) U2 _4 R. P8 Dto new( m7 ~) ]0 k# g- h
  ca
$ \4 z$ o; s6 E) a  crt 5 * num_of_building
/ C- ]; f& V" }# k9 q  ask turtles [ifelse (remainder who 5 = 0) [set color red][set color blue]]
  a' \* ?# `0 u; L9 D9 M6 i" U  scatter     ;;keep center-turtle random positions
8 P* R7 W  Z) u& G: S: V5 |  unit_plan   ;;make up the building plan# R$ D* {0 D0 |
end
! c" w3 `+ N5 H, x. ?to scatter
, v; Z5 m$ b2 ]# Vask turtles with [remainder who 5 = 0]
# [1 m5 M1 K  T4 _5 a* e( I3 C[
4 i; x2 M. ], ?  x# M: Mset xcor xcor - 6 + random-float 15
) V! m- w$ ^7 S& C( n2 ^' @set ycor ycor - 6 + random-float 15
) {" E5 g. p. V8 Y, r]
# j" H2 N/ V4 G& A3 G7 Hend3 j- p  c- w1 ~
to unit_plan
% o9 C: T. c; b8 m6 }! A+ c: Bask turtles [- k/ b$ V4 c0 f( [& @
if (remainder who 5 = 1) [set a who - E9 T# W, {- q3 L- t* v0 H
                          set x ( 0 - Wid / 2 )
( g) q( \3 j/ x6 C, n                          set y  Dep / 2 ]8 I& r1 @2 K- ^) l1 [4 S/ g# [4 N
           set b  int (a / 5) * 5
* _. y4 \; w! a1 l" g% {    setxy ( xcor-of turtle b + x )
% V# i: h* C6 I& }$ v* R3 S          ( ycor-of turtle b + y )( }9 n% @: J; d. \5 H( R, P- C
if (remainder who 5 = 2) [set c who! V4 W- D, M9 X" I/ z" }
                          set x ( 0 - Wid / 2 )
: S. t* G! V' w. C                          set y (0 - Dep / 2 )  ]
$ r, \& l( T* U) d                          set d int (c / 5) * 5
9 {; I; B* y! R% L3 ~6 b! j! b   setxy   ( xcor-of turtle d + x )
1 B. n! R$ C/ e$ E0 t4 ?           (ycor-of turtle d + y )
) }0 r& \$ v& j* W. L         
3 ?5 V) o. u! a2 ~            
( U" u1 D' m1 t- {) yif (remainder who 5 = 3) [set k who
8 S  ]/ }7 [& Z( @& O* l                          set x( Wid / 2)  0 s) r7 T8 ~7 I  S
                          set y (0 - Dep / 2 ) ]& y& Z3 j& b+ u7 h5 C6 p/ t" R4 Q
                          set f int (k / 5) * 5  h$ N" ~. q- L8 ]1 j' f
  setxy   ( xcor-of turtle f + x )9 G* y' a' X6 G2 I) z, f2 \
           (ycor-of turtle f + y )
, G7 Z# p3 f% i  S           
! g. U5 Z) Q; h           : g8 z6 U6 }3 k* F$ a# e% I
if (remainder who 5 = 4) [set g who
8 F( \3 d9 ]: M- g& `- {                          set x Wid / 2   X) V; c, w5 l  M4 w
                          set y  Dep / 2 ]3 q+ Z; \& F* {4 E9 k2 m
                          set h  int (g / 5) * 52 i- |, `' B7 F5 z; k1 E/ n- o
  setxy   ( xcor-of turtle h + x )3 @2 A: e* i0 D+ T5 {9 B4 y6 w8 S, ^! _
           (ycor-of turtle h + y )
+ v1 x9 O: O$ K. }" r                          
8 `+ t3 w3 h' _8 a2 R                          8 H! ~% o: S/ A5 `" `4 @
                          ]
) I7 Y; i. d& k% \% Y; w. K1 Y* R' Uend; j' D' K/ ]+ a  T$ v$ x- e

1 ^" A' j2 D, ]% R2 ?[ 本帖最后由 etamina 于 2008-4-10 16:41 编辑 ]

本帖子中包含更多资源

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

x
 楼主| 发表于 2008-4-11 13:26:12 | 显示全部楼层
已经解决了,$ r+ }' ], s! g4 }+ W1 f! H( N
应该是
. B$ R) }6 t8 s( sask turtles [
$ U6 t' y; Q0 j# m- l9 F& w  ?) Cif (remainder who 5 = 1) [set x ( 0 - Wid / 2 )
9 S) }& I5 o1 }- t                          set y  Dep / 2
* y, K! f& p& _( @4 m3 C           set b  int (who / 5) * 58 ^7 w) ~$ l+ Y; L$ w
    setxy ( xcor-of turtle b + x )% s1 @! x% q! a3 R2 i4 k
          ( ycor-of turtle b + y )]]% D, ]7 E) a6 z7 l) k' E
end( c0 `) e1 [" V! E
之前有个括号位置不对没发现
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-5-20 05:46 , Processed in 0.013611 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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