我目前正在研究控制机器人在田野中导航的软件。我创建了一个0x和1的96x96矩阵,以表示当前我的机器人在该区域内的位置。为了帮助解决问题/建模,我创建了一个函数,该函数使用嵌套的while循环在图形上绘制所有1。机器人是8x8,因此它应该在我的绘图的右下角显示为8x8。而是在y轴上显示为垂直线0-7。
#-------------------------------------------------
#Desc: shows 96x96 matrix
def plotMatrix(matrix):
i = 0 # row count
j = 0 # column count
# cycle through rows->columns to plot values
while i < 96: # 96 is array size
while j <96:
if matrix[i][j] == 1:
plt.plot(i,j,'ro')
j = j + 1
i = i + 1
plt.axis([0,95,0,95])
plt.grid([0,95,9,95])
plt.show()
#-------------------------------------------------
显示了一个96x96图形,y轴上填充了0-7。它应该产生这个,但是在x轴上对1,2,3,4,5,6,7镜像为0-7。
答案 0 :(得分:0)
您可以为空网格初始化 Retrofit retrofit = new Retrofit.Builder()
.baseUrl(APIService.HOST)
.addConverterFactory(GsonConverterFactory
.create())
.build();
APIService apiService = retrofit.create(APIService.class);
Call<List<Meteo>> call = apiService.getMeteo(44);
call.enqueue(new Callback<List<Meteo>>() {
@Override
public void onResponse(Call<List<Meteo>> call, Response<List<Meteo>> response) {
MeteoAdapter adapter = new MeteoAdapter(response.body());
// Method show just shows list of weather data
getViewState().show(adapter);
}
@Override
public void onFailure(Call<List<Meteo>> call, Throwable t) {
Log.d("MyLog", "WRONG");
}
});
数组,如下所示:
numpy
然后您可以创建一个机器人:
import numpy as np
grid = np.zeros((96, 96))
然后,您可以通过将其广播到网格中来确定机器人的起点
robot = np.ones((8, 8))
希望您能看到它的构建方式,并将其用作跳出点以允许您移动机器人等。这是以左上角为机器人和网格的参考放置机器人,但是您可以很容易地解决这个问题。
希望这很有帮助