Как можно скопировать атрибут одного узла ссылки с другого узла той же ссылки? - PullRequest
0 голосов
/ 16 января 2019

Я хотел бы создать связь между черепахой одной породы и другой черепахой другой породы, а затем скопировать значение атрибута черепахи в одном узле ссылки в атрибут другой черепахи в другой узел той же ссылки.

Я пытался:

to go
  ask one-of apples [
    create-link-to one-of oranges
    ask-mood]
end

to ask-mood
  set others-mood [my-mood] of other-end
end

И (очевидно) получило сообщение об ошибке «Только черепаха может получить ДРУГОЕ КОНЕЦ».

Не могли бы вы посоветовать код, который мне нужен? Спасибо.

1 Ответ

0 голосов
/ 17 января 2019

Трудно дать ответ без рабочего примера. У вас есть небольшая концептуальная проблема - если два ребра связаны с одной черепахой, какая черепаха должна обеспечивать ценность для настроения других? В следующем коде я проигнорировал это и просто случайно выбрал тот, который предоставил значение.

Вам необходимо изменить контекст, выбрав ссылку, после чего другой конец ссылки станет доступен. Ниже приведена полная модель, которую вы можете адаптировать к своему коду.

turtles-own [mood others-mood]

to setup
  clear-all
  create-turtles 10
  [ setxy random-xcor random-ycor
    set mood random-float 1
  ]
  ask turtles
  [ create-link-to one-of other turtles
    set others-mood [mood] of [other-end] of one-of my-links
  ]
end
...