4. Описание окружения робота
Author
In [ ]:
# Pkg.add("Animations")
using Images # Библиотека обработки изображений
using FileIO
using Animations
Создание пустой комнаты
In [ ]:
function init(x,y,s_x,s_y)
z = zeros(x,y)
robot = zeros(x,y);
robot[s_x,s_y] = 1
s = zeros(x,y);
s[s_x,s_y] = 1;
return robot, s, z
end
Out[0]:
In [ ]:
x,y = 10,10;
s_x,s_y = 1,1;
room = zeros(x,y);
robot, s, z = init(x,y,s_x,s_y)
heatmap(RGB.(robot, z, z) + RGB.(z, room, z) + RGB.(z, z, s), cbar=:none, c = :blues)
heatmap!(title = "Start point: " * "(" * string(s_x) * "," * string(s_y) * ")")
Out[0]:
Генератор шагов
In [ ]:
Steps_x,Steps_y = zeros(x*y,1),zeros(x*y,1);
for i in 1:Int8(x/2)
Steps_x[(1:x.*2).+(x.*2*(i-1))] = [1:x x:-1:1]
end
for i in 1:y
Steps_y[(1:y).+(y*(i-1))] .= i
end
plot(Steps_y,Steps_x, lizer=1, c=:hsv)
Out[0]:
Визуализация
In [ ]:
@gif for i ∈ 1:length(Steps_x)
robot .= 0;
robot[Int8(Steps_x[i]),Int8(Steps_y[i])] = 1
s[Int8(Steps_x[i]),Int8(Steps_y[i])] = 1;
heatmap(RGB.(robot, z, z) + RGB.(z, room, z) + RGB.(z, z, s), cbar=:none, c = :blues)
end
Out[0]:
