#netlogo
#netlogo
Вопрос:
У меня есть простое изображение в виде карты. Я бы хотел, чтобы черепашки начинали со светло-серого цвета и переходили к более темным участкам для получения ресурсов. Как я могу это сделать?
Мой код
to setup-patches
import-drawing "01.png"
import-pcolors "01.png"
ask patches [
setup-house
;setup-resource
]
end
to setup-house
create-turtles [setxy where pcolor = grey]
set house? where pcolor = grey
end
Изображение находится на https://i.imgur.com/dmODyUW.png.
Я могу предоставить более подробную информацию по запросу.
Комментарии:
1. Извините за мой первоначальный вопрос, я начал кое-какую работу, и я опубликую свою работу через минуту.
2. вы пытаетесь создать дом на каждом сером участке или только на некоторых из них?
3. Светло-серый участок — это то место, где находится дом, а более темный — это место, где они добывают ресурсы. Черепашки будут перемещаться взад и вперед между этими двумя цветными участками.
Ответ №1:
Хорошо, patch
на самом деле термин NetLogo обозначает одну из ячеек сетки в мире. Судя по вашему изображению, серые области будут охватывать несколько участков NetLogo каждый. Следующий код создает несколько случайных серых областей с несколькими участками и дом на одном из участков в одной из серых областей.
breed [houses house]
to testme
clear-all
setup-patches
setup-houses
end
to setup-patches
ask n-of 3 patches
[ set pcolor gray
ask neighbors
[ set pcolor gray
ask neighbors
[ set pcolor gray
]
]
]
end
to setup-houses
ask one-of patches with [pcolor = gray]
[ sprout-houses 1
[ set color red
]
]
end
Ваш вопрос слишком расплывчатый, чтобы на него можно было ответить должным образом, но, надеюсь, это выведет вас на правильный путь. Я предлагаю вам переделать руководства по NetLogo и посмотреть на некоторые модели в библиотеке, входящей в состав программного обеспечения, чтобы найти фрагменты кода, которые выполняют задачи, которые вам понадобятся.
Комментарии:
1. Спасибо, это делает то, что я хотел. Но если серьезно, я многим вам обязан после того, как я не очень четко сформулировал свой вопрос, а вы все равно ответили на мой запрос.