Небольшой сдвиг при преобразовании из ГИС в нетлогичные координаты - PullRequest
0 голосов
/ 18 мая 2018

При сохранении координат черепахи в виде координат ГИС, а затем их загрузки в NetLogo путем преобразования их обратно в координаты NetLogo, происходит небольшое смещение позиции.

Этот код я использую для хранения NetLogo в ГИСкоординаты:

let env gis:envelope-of agentToStore
file-open "agentLocations.csv"
file-print (word first env "," last env)
file-close

И этот код я использую для преобразования координат ГИС обратно в координаты NetLogo (здесь x и y - координаты, считанные из файла):

 let envelope gis:world-envelope
 let xscale (max-pxcor - min-pxcor) / (item 1 envelope - item 0 envelope)
 let yscale (max-pycor - min-pycor) / (item 3 envelope - item 2 envelope)
 if x >= item 0 envelope and x <= item 1 envelope
   and y >= item 2 envelope and y <= item 3 envelope[
     let netlogo-x (x - item 0 envelope) * xscale  + min-pxcor
     let netlogo-y (y - item 2 envelope) * yscale + min-pycor
     ask patch (ceiling netlogo-x) (floor netlogo-y) [sprout 1]
 ]

Без 'потолок 'и' пол ', загруженный агент всегда перемещается на ячейку в NetLogo.Однако даже в случае потолка и пола в ГИС-пространстве все еще есть небольшой сдвиг для некоторых агентов, что влияет на мой результат.Есть ли лучший способ сделать это?

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