Files
PathPlanning/Search-based Planning/env.py
T

53 lines
1.1 KiB
Python
Raw Normal View History

2020-06-18 14:57:03 -07:00
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
"""
@author: huiming zhou
"""
import matplotlib.pyplot as plt
2020-06-18 17:08:10 -07:00
x_range, y_range = 51, 31 # size of background
2020-06-18 14:57:03 -07:00
2020-06-18 15:52:17 -07:00
def obs_map():
2020-06-18 14:57:03 -07:00
"""
Initialize obstacles' positions
:return: map of obstacles
"""
2020-06-18 17:08:10 -07:00
obs = []
2020-06-18 14:57:03 -07:00
for i in range(x_range):
2020-06-18 17:08:10 -07:00
obs.append((i, 0))
2020-06-18 14:57:03 -07:00
for i in range(x_range):
2020-06-18 17:08:10 -07:00
obs.append((i, y_range - 1))
2020-06-18 14:57:03 -07:00
for i in range(y_range):
2020-06-18 17:08:10 -07:00
obs.append((0, i))
2020-06-18 14:57:03 -07:00
for i in range(y_range):
2020-06-18 17:08:10 -07:00
obs.append((x_range - 1, i))
2020-06-18 14:57:03 -07:00
for i in range(10, 21):
2020-06-18 17:08:10 -07:00
obs.append((i, 15))
2020-06-18 14:57:03 -07:00
for i in range(15):
2020-06-18 17:08:10 -07:00
obs.append((20, i))
2020-06-18 14:57:03 -07:00
for i in range(15, 30):
2020-06-18 17:08:10 -07:00
obs.append((30, i))
2020-06-18 14:57:03 -07:00
for i in range(16):
2020-06-18 17:08:10 -07:00
obs.append((40, i))
2020-06-18 14:57:03 -07:00
2020-06-18 17:08:10 -07:00
return obs
2020-06-18 15:52:17 -07:00
def show_map(xI, xG, obs_map, name):
2020-06-18 14:57:03 -07:00
obs_x = [obs_map[i][0] for i in range(len(obs_map))]
obs_y = [obs_map[i][1] for i in range(len(obs_map))]
plt.plot(xI[0], xI[1], "bs")
plt.plot(xG[0], xG[1], "gs")
plt.plot(obs_x, obs_y, "sk")
2020-06-18 15:52:17 -07:00
plt.title(name, fontdict=None)
2020-06-18 14:57:03 -07:00
plt.grid(True)
plt.axis("equal")
2020-06-18 17:08:10 -07:00