hub/city_model_structure/transport/walking_area.py

71 lines
1.4 KiB
Python
Raw Normal View History

"""
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