В своей симуляции я создал две породы черепах: одна - обычная черепаха, а другая - ореол, предназначенный для перекрытия каждой черепахи.Всякий раз, когда заштрихована черепаха (либо созданная как часть процедуры установки, либо созданная с помощью функции штриховки netlogo), гало также заштриховывается и связывается путем вызова отдельной функции make-halo.
create turtles turtle-initial-number
;;(all the turtle genes are set here)
if halos-enabled [make-halo]
to make-halo
hatch-halos 1
[ set size sight-radius * 2 + 1
set shape "square"
set color lput 64 extract-rgb color
__set-line-thickness 0.5
create-link-from myself
[ tie
hide-link ] ]
end
Из-за некоторыхВзаимодействия, которые я реализовал, иногда черепахи и гало отрываются друг от друга, поэтому я хотел бы добавить шаг в конце каждого тика, чтобы все гало возвращались к своим черепахам, где они принадлежат.Есть ли способ переместить ореол или установить его координаты для черепахи на другом конце линии?
Другой вариант - решить, что происходит, когда происходит отключение.У меня есть другая порода черепах (людей), которые могут «отталкивать» других с помощью этой функции отталкивания ниже.Черепахи (и их ореолы), занимающие 9 квадратов перед человеком, выталкиваются вперед в том же направлении, в котором человек стоит.Когда их толкают, по какой-то причине черепаха больше не находится в центре гало.
to push-away
ask people [
let push-dir heading
ask patch-ahead 2
[ask turtles-here
[set heading push-dir
fd 2]
ask neighbors
[ask turtles-here
[set heading push-dir
fd 2]
]
]
]
end