71 lines
1.4 KiB
Python
71 lines
1.4 KiB
Python
|
"""
|
||
|
Walking area module
|
||
|
SPDX - License - Identifier: LGPL - 3.0 - or -later
|
||
|
Copyright © 2020 Project Author Pilar Monsalvete Alvarez de Uribarri pilar.monsalvete@concordia.ca
|
||
|
Contributor Milad milad.aghamohamadnia@concordia.ca
|
||
|
"""
|
||
|
|
||
|
from typing import List, TypeVar
|
||
|
|
||
|
Edge = TypeVar['Edge']
|
||
|
Node = TypeVar['Node']
|
||
|
|
||
|
|
||
|
class WalkingArea:
|
||
|
"""
|
||
|
WalkingArea class
|
||
|
"""
|
||
|
|
||
|
def __init__(self):
|
||
|
self._node = None
|
||
|
self._edges = None
|
||
|
self._shape = None
|
||
|
|
||
|
@property
|
||
|
def node(self) -> Node:
|
||
|
"""
|
||
|
The node at which this walking area is located
|
||
|
:return: Node
|
||
|
"""
|
||
|
return self._node
|
||
|
|
||
|
@node.setter
|
||
|
def node(self, value):
|
||
|
"""
|
||
|
The node at which this walking area is located setter
|
||
|
:param value: Node
|
||
|
"""
|
||
|
self._node = value
|
||
|
|
||
|
@property
|
||
|
def edges(self) -> List[Edge]:
|
||
|
"""
|
||
|
The (road) edges which uniquely define the walking area
|
||
|
:return: [Edge]
|
||
|
"""
|
||
|
return self._edges
|
||
|
|
||
|
@edges.setter
|
||
|
def edges(self, value):
|
||
|
"""
|
||
|
The (road) edges which uniquely define the walking area setter
|
||
|
:param value: [Edge]
|
||
|
"""
|
||
|
self._edges = value
|
||
|
|
||
|
@property
|
||
|
def shape(self) -> List[List[float]]:
|
||
|
"""
|
||
|
List of positions (positions in m)
|
||
|
:return: [[x, y, (z)]]
|
||
|
"""
|
||
|
return self._shape
|
||
|
|
||
|
@shape.setter
|
||
|
def shape(self, value):
|
||
|
"""
|
||
|
List of positions setter
|
||
|
:param value: [[x, y, (z)]]
|
||
|
"""
|
||
|
self._shape = value
|