mirror of
https://github.com/OSURoboticsClub/Rover_2017_2018.git
synced 2025-11-08 18:21:15 +00:00
Generate current location marker changed and fit PIP8
This commit is contained in:
@@ -349,6 +349,7 @@ class OverlayImage(object):
|
|||||||
self.height = height
|
self.height = height
|
||||||
self.big_image = None
|
self.big_image = None
|
||||||
self.display_image = None
|
self.display_image = None
|
||||||
|
self.indicator = None
|
||||||
self.helper = MapHelper.MapHelper()
|
self.helper = MapHelper.MapHelper()
|
||||||
|
|
||||||
x, y = self._get_cartesian(latitude, longitude)
|
x, y = self._get_cartesian(latitude, longitude)
|
||||||
@@ -370,6 +371,7 @@ class OverlayImage(object):
|
|||||||
True)
|
True)
|
||||||
self.display_image = self.helper.new_image(self.width, self.height,
|
self.display_image = self.helper.new_image(self.width, self.height,
|
||||||
True)
|
True)
|
||||||
|
self.generate_dot_and_hat()
|
||||||
|
|
||||||
def _get_cartesian(self, lat, lon):
|
def _get_cartesian(self, lat, lon):
|
||||||
"""
|
"""
|
||||||
@@ -409,23 +411,20 @@ class OverlayImage(object):
|
|||||||
|
|
||||||
return self.display_image
|
return self.display_image
|
||||||
|
|
||||||
|
def generate_dot_and_hat(self):
|
||||||
|
self.indicator = self.helper.new_image(25, 50, True)
|
||||||
|
draw = PIL.ImageDraw.Draw(self.indicator)
|
||||||
|
draw.ellipse((0, 25, 25, 50), fill="red")
|
||||||
|
draw.line((0, 24, 13, 1), fill="red", width=5)
|
||||||
|
draw.line((13, 1, 24, 24), fill="red", width=5)
|
||||||
|
|
||||||
def _draw_rover(self, lat, lon, size, scaler):
|
def _draw_rover(self, lat, lon, size, scaler):
|
||||||
x, y = self._get_cartesian(lat, lon)
|
x, y = self._get_cartesian(lat, lon)
|
||||||
draw = PIL.ImageDraw.Draw(self.big_image)
|
# Center of the circle on the indicator is (12.5, 37.5)
|
||||||
draw.ellipse((x-size, y-size, x+size, y+size), fill="red")
|
x = x - 12
|
||||||
point_1 = tuple((math.cos(x-2*size * scaler), math.sin(y * scaler)))
|
y = y - 37
|
||||||
point_2 = tuple((math.cos(x * scaler), math.sin(y+2*size * scaler)))
|
self.display_image.paste(self.indicator, (x, y))
|
||||||
point_3 = (math.cos(x+2*size * scaler), math.sin(y * scaler))
|
|
||||||
draw.line(
|
|
||||||
(point_1,
|
|
||||||
point_2),
|
|
||||||
fill="red",
|
|
||||||
width=600)
|
|
||||||
draw.line(
|
|
||||||
(point_2,
|
|
||||||
point_3),
|
|
||||||
fill="red",
|
|
||||||
width=600)
|
|
||||||
self.display_image.save("Something.png")
|
self.display_image.save("Something.png")
|
||||||
|
|
||||||
def update(self):
|
def update(self):
|
||||||
|
|||||||
@@ -84,9 +84,15 @@ class RoverMapCoordinator(QtCore.QThread):
|
|||||||
def _get_map_image(self):
|
def _get_map_image(self):
|
||||||
while self.map_image is None:
|
while self.map_image is None:
|
||||||
self.map_image = self.google_maps_object.display_image
|
self.map_image = self.google_maps_object.display_image
|
||||||
self.overlay_image_object.update_new_location(44.567161,-123.278432, .7)
|
self.overlay_image_object.update_new_location(44.567161,
|
||||||
self.map_image.paste(self.overlay_image_object.display_image, (0,0), self.overlay_image_object.display_image)
|
-123.278432,
|
||||||
# self.map_image = Image.alpha_composite(self.google_maps_object.display_image, self.overlay_image_object.display_image)
|
.7)
|
||||||
|
self.map_image.paste(self.overlay_image_object.display_image,
|
||||||
|
(0, 0),
|
||||||
|
self.overlay_image_object.display_image)
|
||||||
|
# self.map_image = Image.alpha_composite(
|
||||||
|
# self.google_maps_object.display_image,
|
||||||
|
# self.overlay_image_object.display_image)
|
||||||
# get overlay here
|
# get overlay here
|
||||||
qim = ImageQt(self.map_image)
|
qim = ImageQt(self.map_image)
|
||||||
self.map_pixmap = QtGui.QPixmap.fromImage(qim)
|
self.map_pixmap = QtGui.QPixmap.fromImage(qim)
|
||||||
|
|||||||
Reference in New Issue
Block a user